> php教程 > php手册 > 본문

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

WBOY
풀어 주다: 2016-06-13 09:03:16
원래의
1201명이 탐색했습니다.

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

   这篇文章主要介绍了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.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿