php ios推送(代码)


Posted in PHP onJuly 01, 2013
<?php
//php需要开启ssl(OpenSSL)支持
$apnsCert    = "ck.pem";//连接到APNS时的证书许可文件,证书需格外按要求创建
$pass        = "123456";//证书口令
$serverUrl   = "ssl://gateway.sandbox.push.apple.com:2195";//push服务器,这里是开发测试服务器
$deviceToken = "a8fcd4aa8943b223d4ebcd54fe168a8b99b3f24c63dbc0612db25a8c0a588675";//ios设备id,中间不能有空格,每个ios设备一个id
$message = $_GET ['message'] or $message = "hello!";
$badge   = ( int ) $_GET ['badge'] or $badge = 2;
$sound   = $_GET ['sound'] or $sound = "default";
$body    = array('aps' => array('alert' => $message , 'badge' => $badge , 'sound' => $sound));
$streamContext = stream_context_create();
stream_context_set_option ( $streamContext, 'ssl', 'local_cert', $apnsCert );
stream_context_set_option ( $streamContext, 'ssl', 'passphrase', $pass );
$apns = stream_socket_client ( $serverUrl, $error, $errorString, 60, STREAM_CLIENT_CONNECT|STREAM_CLIENT_PERSISTENT, $streamContext);//连接服务器
if ($apns) {
    echo "Connection OK <br/>";
} else {
    echo "Failed to connect $errorString";
    return;
}
$payload = json_encode ( $body );
$msg     = chr(0) . pack('n', 32) . pack('H*', str_replace(' ', '', $deviceToken)) . pack('n', strlen($payload)) . $payload;
$result  = fwrite ( $apns, $msg);//发送消息
fclose ( $apns );
if ($result)
    echo "Sending message successfully: " . $payload;
else
    echo 'Message not delivered';
?>
PHP 相关文章推荐
FleaPHP的安全设置方法
Sep 15 PHP
PHP 金额数字转换成英文
May 06 PHP
PHP中对于浮点型的数据需要用不同的方法解决
Mar 11 PHP
fckeditor上传文件按日期存放及重命名方法
May 22 PHP
typecho插件编写教程(五):核心代码
May 28 PHP
php数字运算验证码的实现代码
Jul 30 PHP
PHP使用http_build_query()构造URL字符串的方法
Apr 02 PHP
PHP模块化安装教程
Jun 01 PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 PHP
yii2-GridView在开发中常用的功能及技巧总结
Jan 07 PHP
php中实现字符串翻转的方法
Feb 22 PHP
mongodb和php的用法详解
Mar 25 PHP
PHP分页效率终结版(推荐)
Jul 01 #PHP
解析php防止form重复提交的方法
Jul 01 #PHP
PHP以指定字段为索引返回数据库所取的数据数组
Jun 30 #PHP
php设计模式之单例、多例设计模式的应用分析
Jun 30 #PHP
php获取$_POST同名参数数组的实现介绍
Jun 30 #PHP
深入解析php中的foreach问题
Jun 30 #PHP
浅析Apache中RewriteCond规则参数的详细介绍
Jun 30 #PHP
You might like
初次接触php抽象工厂模式(Elgg)
2010/03/21 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
2014/06/25 PHP
Netbeans 8.2将支持PHP7 更精彩
2016/06/13 PHP
PHP中加速、缓存扩展的区别和作用详解(eAccelerator、memcached、xcache、APC )
2016/07/09 PHP
php微信开发之图片回复功能
2018/06/14 PHP
javascript 验证日期的函数
2010/03/18 Javascript
js调试系列 源码定位与调试[基础篇]
2014/06/18 Javascript
理解javascript回调函数
2014/12/28 Javascript
JQuery通过AJAX从后台获取信息显示在表格上并支持行选中
2015/09/15 Javascript
DWR3 访问WEB元素的两种方法实例详解
2017/01/03 Javascript
jQuery+PHP+Mysql实现抽奖程序
2020/04/12 jQuery
jQuery列表检索功能实现代码
2017/07/17 jQuery
用javascript获取任意颜色的更亮或更暗颜色值示例代码
2017/07/21 Javascript
基于AngularJS实现表单验证功能
2017/07/28 Javascript
react-native DatePicker日期选择组件的实现代码
2017/09/12 Javascript
jQuery中 DOM节点操作方法大全
2017/10/12 jQuery
浅谈webpack编译vue项目生成的代码探索
2017/12/11 Javascript
对 Vue-Router 进行单元测试的方法
2018/11/05 Javascript
vue父子组件通信的高级用法示例
2019/08/29 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
javascript 高级语法之继承的基本使用方法示例
2019/11/11 Javascript
node爬取新型冠状病毒的疫情实时动态
2020/02/06 Javascript
Python SQLite3数据库操作类分享
2014/06/10 Python
解析Python中的变量、引用、拷贝和作用域的问题
2015/04/07 Python
Python守护线程用法实例
2017/06/23 Python
用tensorflow构建线性回归模型的示例代码
2018/03/05 Python
解决python nohup linux 后台运行输出的问题
2018/05/11 Python
Python实现的redis分布式锁功能示例
2018/05/29 Python
Python基础教程之异常详解
2019/01/10 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例
2020/03/06 Python
Free People中国官网:波西米亚风格女装服饰
2016/08/30 全球购物
大学毕业的自我鉴定
2013/10/08 职场文书
旅游项目开发策划书
2014/01/18 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
岗位工作说明书
2014/07/29 职场文书