• 爱情文章
  • 亲情文章
  • 友情文章
  • 生活随笔
  • 校园文章
  • 经典文章
  • 人生哲理
  • 励志文章
  • 搞笑文章
  • 心情日记
  • 英语文章
  • 范文大全
  • 作文大全
  • 新闻阅读
  • 当前位置: 山茶花美文网 > 作文大全 > 正文

    【PHP,ajax,异步执行不等待执行结果的处理方法】 ajax同步和异步的区别

    时间:2020-05-14来源:山茶花美文网 本文已影响 山茶花美文网手机站

    这篇文章主要介绍了PHP ajax 异步执行不等待执行结果的处理方法,本文直接给出实现代码,需要的朋友可以参考下

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

    所以前台方面采用的方案一般为先展示生成的短地址,再定期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,ajax,异步执行不等待执行结果的处理方法】 ajax同步和异步的区别 相关文章:
    • 爱情文章
    • 亲情文章
    • 友情文章
    • 随笔
    • 哲理
    • 励志
    • 范文大全