PHP ajax 异步执行不等待执行结果的处理方法


Posted in PHP onMay 27, 2015

短地址生成应用中,要根据长地址生成网页快照,这个生成时间非瞬发,不可预估。

所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕。

So,PHP代码这里做了如下处理:

// 这边服务器采用的是phantomjs 来生成网页快照

$cd        = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phantomjs /home/emp/phpinstall/phantomjs/snap.js "'.$url.'" /home/emp/public_html_demo/cms/'.$thumb.' & ';

try{

    @pclose(popen($cd,"r"));

}catch(Exception $e){}

前台Js的ajax脚本:

_wt = window.setInterval("sys.ajax('?m=shorturl&c=index&a=check_snap','',callback.checkSnap);",200);

回调函数checkSnap等待PHP的check_snap检测网页快照 文件是否生成完毕。

收到生成完毕的信息后,清楚_wt这个定时器。

clearTimeout(_wt);

这样,PHP和前台AJAX这对JFYF就合作得很欢快了~
PHP 相关文章推荐
缓存技术详谈―php
Dec 14 PHP
php str_pad 函数使用详解
Jan 13 PHP
PHP 读取文件的正确方法
Apr 29 PHP
php单例模式实现(对象只被创建一次)
Dec 05 PHP
PHP不用第三变量交换2个变量的值的解决方法
Jun 02 PHP
探讨:parse url解析URL,返回其组成部分
Jun 14 PHP
php使用反射插入对象示例分享
Mar 11 PHP
PHP中的命名空间详细介绍
Jul 02 PHP
PHP微信红包API接口
Dec 05 PHP
PHP输入流php://input实例讲解
Dec 22 PHP
PHP检测链接是否存在的代码实例分享
May 06 PHP
PHP面向对象类型约束用法分析
Jun 12 PHP
PHP中preg_match函数正则匹配的字符串长度问题
May 27 #PHP
PHP中把有符号整型转换为无符号整型方法
May 27 #PHP
PHP中的事务使用实例
May 26 #PHP
PHP模板引擎smarty详细介绍
May 26 #PHP
PHP中的一些常用函数收集
May 26 #PHP
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
May 25 #PHP
PHP SOCKET编程详解
May 22 #PHP
You might like
smarty巧妙处理iframe中内容页的代码
2012/03/07 PHP
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
2013/07/01 PHP
php记录代码执行时间(实现代码)
2013/07/05 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
codeigniter上传图片不能正确识别图片类型问题解决方法
2014/07/25 PHP
自写的利用PDO对mysql数据库增删改查操作类
2018/02/19 PHP
Laravel框架中缓存的使用方法分析
2019/09/06 PHP
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
nodejs的require模块(文件模块/核心模块)及路径介绍
2013/01/14 NodeJs
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
Ajax与服务器(JSON)通信实例代码
2016/11/05 Javascript
jQuery webuploader分片上传大文件
2016/11/07 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
JS实现获取word文档内容并输出显示到html页面示例
2018/06/23 Javascript
浅谈react性能优化的方法
2018/09/05 Javascript
Vue多组件仓库开发与发布详解
2019/02/28 Javascript
基于vue.js实现购物车
2020/01/15 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
JavaScript缓动动画函数的封装方法
2020/11/25 Javascript
vue-quill-editor插入图片路径太长问题解决方法
2021/01/08 Vue.js
Python的形参和实参使用方式
2019/12/24 Python
Django用户身份验证完成示例代码
2020/04/03 Python
python MD5加密的示例
2020/10/19 Python
用CSS3的box-reflect设置文字倒影效果的方法讲解
2016/03/07 HTML / CSS
草莓网化妆品澳大利亚站:Strawberrynet AU
2017/12/18 全球购物
Sneaker Studio乌克兰:购买运动鞋
2018/03/26 全球购物
亚马逊意大利站点:Amazon.it
2020/12/31 全球购物
门前三包责任书
2014/04/15 职场文书
小学校园之星事迹材料
2014/05/16 职场文书
小学生运动会广播
2015/08/19 职场文书
《分数乘法》教学反思
2016/02/24 职场文书
《迟到》教学反思
2016/02/24 职场文书
Java各种比较对象的方式的对比总结
2021/06/20 Java/Android
【海涛dota解说】海涛小满开黑4v5被破两路翻盘潮汐第一视角解说
2022/04/01 DOTA
ubuntu如何搭建vsftpd服务器
2022/12/24 Servers