PHP开发工程师@温州。博客关于:技术、生活、读书、互联网。

博客不再更新。

已将博客迁移到http://iscript.github.io/ ,以后的新内容都将在github发布。

使用腾讯信鸽推送iOS消息

近期App需要添加推送功能,选择了腾讯信鸽作为消息推送平台。


信鸽

信鸽(XG Push)是一款专业移动App推送平台,支持百亿级的通知/消息推送,秒级触达移动用户,现已全面支持Android和iOS两大主流平台。开发者可以方便地通过嵌入SDK,通过API调用或者Web端可视化操作,实现对特定用户推送,大幅提升用户活跃度,有效唤醒沉睡用户,并实时查看推送效果。


简单记录开发过程(使用swift语言):


1. 接入应用

登录http://xg.qq.com/  创建应用,获得ACCESS ID及ACCESS KEY。


2. 制作...

iOS中javascript与swift进行交互

在移动app混合开发中,必不可少的需要Javascript与原生应用进行交互。

下面以iOS平台为例,介绍在WebView中javascript与swift的交互。


1.swift调用javascript

swift调用javascript很简单,使用webview对象的一个方法即可实现:

webview.stringByEvaluatingJavaScriptFromString(“alert(‘啊~swift调用了我。’)”);

上面的代码用swift执行网页中的一个弹窗,在模拟器打开如下。



2. javascript调用swift

javascript不能...

PHP解析行政区划代码

1.获取数据源

到国家统计局下载最新行政区划代码

http://www.stats.gov.cn/tjsj/tjbz/xzqhdm/

保存为data.txt


通过对ID进行分析,可以发现

  1. ID一共6位

  2. 若2-6位为0000,则为省级,可以认定其父ID为1(中国)

  3. 若5-6为00,则为市级,其父ID为 自己ID前2位+0000(省)

  4. 其他则为区县,其父ID为 自己ID前4位+00


2.编写PHP解析为标准JSON数据

$file = fopen('data.txt', 'r');

$area = array();...

数据可视化及图表

数据可视化是关于数据之视觉表现形式的研究;其中,这种数据的视觉表现形式被定义为一种以某种概要形式抽提出来的信息,包括相应信息单位的各种属性和变量。

图表是"数据可视化"的常用手段。


常见图表

一、柱状图(Bar Chart)

柱状图是最常见的图表,它的适用场合是二维数据集(每个数据点包括两个值x和y),但只有一个维度需要比较。


二、折线图(Line Chart)数据

折线图适合二维的大数据集,尤其是那些趋势比单个数据点更重要的场合。


三、饼图(Pie Chart)

饼图是一种应该避免使用的图表,因为肉眼对面积大小不敏感。


四、散点图(Scatter...

HTML head 头标签

[转载自FEX]


HTML head 头部分的标签、元素有很多,涉及到浏览器对网页的渲染,SEO 等等,而各个浏览器内核以及各个国内浏览器厂商都有些自己的标签元素,这就造成了很多差异性。移动互联网时代,head 头部结构,移动端的 meta 元素,显得更为重要。了解每个标签的意义,写出满足自己需求的 head 头标签,是本文的目的。本篇以一丝的文章为基础,进行扩展总结介绍常用的 head 中各个标签、元素的意义以及使用场景。


DOCTYPE

DOCTYPE(Document Type),该声明位于文档中最前面的位置,处于 html 标签之前,此标签告知浏览...

记一次mysql奔溃解决过程

16.47 , 正是坐等下班的时刻。

QQ响了,这时找我的一般没什么好事,呵呵。。 果然,要延迟一个小时下班了。

那么就开始解决问题把。

打开项目主页,错误如下 :
MySQL server error report:Array ( [2] => Array ( [error] => Got error 28 from storage engine ) [3] => Array ( [errno] => 1030 )
MySQL server error report...

App Store审核指南中文版

App Store Review Guidelines(英文版)。


1. 条款和条件

1.1 为App Store开发程序,开发者必须遵守 Program License Agreement (PLA)、人机交互指南(HIG)以及开发者和苹果签订的任何协议和合同。以下规则和示例旨在帮助开发者的程序能获得App Store的认可,而不是修改或删除任何其他协议中的条款。


2. 功能

2.1 崩溃的程序将会被拒绝。

2.2 存在错误的程序将会被拒绝。

2.3 跟开发者宣传不符的程序将会被拒绝。 

2.4 无应用文档或隐藏功...

产品经理的20堂必修课

1.从用户需求出发

任何产品想要有用户使用,就必须以满足用户需求为目的。

美国人本主义心理学家马斯洛把人们多种多样的需求分为八大类:生理需求、安全需求、归属于爱、尊重需求、认知需求、美学需求、自我实现、超越需求。

让产品的核心功能满足人们的基本需求,才能得以获得市场的最大效果。


2.围绕用户需求打造产品竞争力

两种常见而有效的围绕用户需求打造产品价值的策略:

  • 用颠覆性的方式满足用户的核心需求。

  • 集中精力充分满足用户的几个期望型需求。


3.为什么我们的产品总是失败

九个字:用户对它并不感兴趣。


4.简单,让产品更加锋利

乔布斯说:“简单之所以比复杂更难,...

《富爸爸穷爸爸》读后感

书中摘录:

  1. 造成贫穷和财务问题的主要原因是恐惧和无知,而非经济环境、政府或富人。

  2. 富人买入资产,穷人只有支出,中产阶级买他们以为是资产的负债。

  3. 什么是资产?资产就是向你口袋送钱的东西。什么是负债?负债就是把钱从你口袋掏出的东西。

  4. 要懂得如何“让钱来替你工作”,而不是“为了钱而工作”。  

  5. 关注自己的事业。

  6. 金钱从来不是真正的资产,我们唯一的、真正的资产是我们的头脑。

  7. 存在财务问题的人经常是一生为别人工作的人,许多人在他们停止工作时就变得一无所有。

  8.  风险总是无处不在,要学会驾驭风险,而不是一味回避风险。

  9. 你学习什么,就会成为...

cookie有关的术语

session cookie

当cookie没有设置超时时间,那么cookie会在浏览器退出时销毁,这种cookie是session cookie。


persistent cookie/tracking cookie

设置了超时时间的cookie,会在指定时间销毁,cookie的维持时间可以持续到浏览器退出之后,这种cookie被持久化在浏览器中。

很多站点用cookie跟踪用户的历史记录,例如广告类站点会使用cookie记录浏览过哪些内容,搜索引擎会使用cookie记录历史搜索记录,这时也可以称作tracking cookie,因为它被用于追踪用户行为。


secure cookie...

微信内置浏览器的Js API

最近做了几个微信微网站的小项目,这里整理下微信内置浏览器的几个Js API。


//当页面加载完毕后执行

if (document.addEventListener) {

                  document.addEventListener('WeixinJSBridgeReady',function(){});

} else if (document.attachEvent) ...

linux下的定时任务crontab

[环境centos 6.5]


前言

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中(/var/spool/cron/以用户命名的文件),以供之后读取和执行。该词来源于希腊语 chronos(χρνο),原意是时间。

通常,crontab储存的指令被守护进程 - crond激活在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。


启动crond进程

service crond start

若没安装请先安装:

yum...

《佛学入门》

四圣谛

四谛是释迦牟尼体悟的苦、集、灭、道四条人生真理,四谛告诉人们人生的本质是苦,以及之所以苦的原因、消除苦的方法和达到涅槃的最终目的。

一、苦谛:说明世间是苦果。我们要知道苦有如病,应该遍知,这是世间的苦果,也是生死的流转。我们要知道所有的病,才能医治它。

二、集谛:说明业与烦恼是苦的根源。我们要知道病苦的原因,将之断除。这是世间的因果,也是生死的流转,但是它指出我们生死流转的原因。

三、灭谛:说明解脱与证果。众生无时无刻不在病苦中,我们要知道没病苦的快乐是怎样的?要认识怎样的人是没有病苦的?要证知怎样才是没有病?这是指出世间的果,就是解脱、清净的境界--涅槃。

四、道谛:说明离...

浏览器安全策略说之内容安全策略CSP

[转载自http://xisigr.com/x/content-security-policy/]


〇  前言

2013年11月Veracode给出的报告指出,全球前1000000网站中仅有269个网站使用了W3C规范的CSP策略头Content-Security-Policy。而在2014年2月ZoomEye给出的测试报告中,国内排名前7000的域名没有使用CSP,国内1千万的域名(含子域名)中仅发现7个使用了CSP策略,其中还有3个网站CSP语法使用错误。


如果说CSP是一个伟大的安全策略,为何全球范围内网站使用率如此之低?是CSP自身的设计存在问题,还是...

nginx构建Https网站

最近在做一个P2P的借贷网站项目,由于网站涉及到资金的交易安全,要对网站的安全方面做几项升级,Https就是其中一项。


一、什么是 SSL 证书,什么是 HTTPS

SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:

  • 数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听。

  • 用户可以通过服务器证书验证他所访问的网站是否真实可靠

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),...

Angular.js中使用$watch监听模型变化

$watch简单使用

$watch是一个scope函数,用于监听模型变化,当你的模型部分发生变化时它会通知你。


$watch(watchExpression, listener, objectEquality);

每个参数的说明如下:

  1. watchExpression:监听的对象,它可以是一个angular表达式如'name',或函数如function(){return $scope.name}。

  2. listener:当watchExpression变化时会被调用的函数或者表达式,它接收3个参数:newValue(新值), oldValue(旧值), scope(作用域的引用...

Mac下chrome跨域设置

通过命令行启动chrome:

open -a "Google Chrome" --args --disable-web-security

出现如下提示则说明成功,然后就随意的调用不同域下的数据了。


--------------------------


SSL/TLS协议运行机制的概述

转载自 http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html


互联网的通信安全,建立在SSL/TLS协议之上。

本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运行过程,不涉及具体的实现细节。如果想了解这方面的内容,请参阅RFC文档


一、作用

不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。

  1. 窃听风险(eavesdropping):第三方可以获知通信内容。

  2. 篡改风险(tampering):第三方可以修改通信内容。

  3. 冒充风险(pretending)...

编写自己的NPM包

1.编写模块

一个最简单的NPM包由主模块index.js和包描述文件package.json组成。

让我们编写一个生成指定长度随机字符串的NPM模块:

//index.js
module.exports = function(len){
    var rdmString = "";
    for (; rdmString.length < len; rdmString += Math.random().toString(36).substr(2));
    return...

© 袁克强的博客 | Powered by LOFTER