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 相关文章推荐
不用iconv库的gb2312与utf-8的互换函数
Oct 09 PHP
PHP伪造referer实例代码
Sep 20 PHP
PHP 执行系统外部命令 system() exec() passthru()
Aug 11 PHP
php下使用SimpleXML 处理XML 文件
Feb 27 PHP
php 无限级分类学习参考之对ecshop无限级分类的解析 带详细注释
Mar 23 PHP
用PHP实现小写金额转换大写金额的代码(精确到分)
Jan 10 PHP
基于wordpress主题制作的具体实现步骤
May 10 PHP
关于Zend Studio 配色方案插件的介绍
Jun 24 PHP
PHP中可以自动分割查询字符的Parse_str函数使用示例
Jul 25 PHP
详解PHP数组赋值方法
Nov 07 PHP
PHP实现简易用户登录系统
Jul 10 PHP
PHP队列场景以及实现代码实例详解
Feb 26 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开发文件系统实例讲解
2006/10/09 PHP
Memcache 在PHP中的使用技巧
2010/02/08 PHP
比较详细PHP生成静态页面教程
2012/01/10 PHP
表格展示无限级分类(PHP版)
2012/08/21 PHP
js使用eval解析json(js中使用json)
2014/01/17 Javascript
js图片延迟技术一般的思路与示例
2014/03/20 Javascript
使用 bootstrap modal遇到的问题小结
2016/11/09 Javascript
Bootstrap基本插件学习笔记之Alert警告框(20)
2016/12/08 Javascript
JS组件系列之JS组件封装过程详解
2017/04/28 Javascript
js随机生成一个验证码
2017/06/01 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
jQuery实现切换隐藏与显示同时切换图标功能
2017/10/29 jQuery
Angular实现的自定义模糊查询、排序及三角箭头标注功能示例
2017/12/28 Javascript
vue项目部署到Apache服务器中遇到的问题解决
2018/08/24 Javascript
js计算两个日期间的天数月的实例代码
2018/09/20 Javascript
Angular中使用ng-zorro图标库部分图标不能正常显示问题
2019/04/22 Javascript
jQuery子选择器与可见性选择器实例分析
2019/06/28 jQuery
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
Vue 实现分页与输入框关键字筛选功能
2020/01/02 Javascript
python基础之包的导入和__init__.py的介绍
2018/01/08 Python
Python标准库笔记struct模块的使用
2018/02/22 Python
PyCharm刷新项目(文件)目录的实现
2020/02/14 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
python三引号如何输入
2020/07/06 Python
中间件分为哪几类
2012/03/14 面试题
求职简历中的自我评价分享
2013/12/08 职场文书
弘扬雷锋精神演讲稿
2014/05/10 职场文书
2015年志愿者服务工作总结
2015/04/20 职场文书
大学开学感言
2015/08/01 职场文书
2016党校学习心得体会范文
2016/01/07 职场文书
2016新党章学习心得体会
2016/01/15 职场文书
学校趣味运动会开幕词
2016/03/04 职场文书
2019求职信大礼包
2019/05/15 职场文书
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python
学会Python数据可视化必须尝试这7个库
2021/06/16 Python
通过Python把学姐照片做成拼图游戏
2022/02/15 Python