실행 결과를 기다리지 않고 PHP Ajax 비동기 실행_php 팁

WBOY
풀어 주다: 2016-05-16 20:14:59
원래의
1051명이 탐색했습니다.

짧은 주소 생성 애플리케이션에서는 긴 주소를 기반으로 웹페이지 스냅샷을 생성해야 합니다. 이 생성 시간은 즉각적이고 예측할 수 없습니다.

그래서 프런트 엔드에서 채택하는 솔루션은 일반적으로 생성된 짧은 주소를 먼저 표시한 다음 주기적으로 AJAX에서 웹 페이지 스냅샷이 생성되었는지 확인하는 것입니다.

그래서 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/' .$엄지손가락.' & ';
시도해 보세요{
@pclose(popen($cd,"r"));
}catch(예외 $e){}

프런트엔드 Js용 Ajax 스크립트:

코드 복사 코드는 다음과 같습니다.

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

콜백 함수 checkSnap은 PHP의 check_snap이 웹 페이지 스냅샷 파일 생성 여부를 감지할 때까지 기다립니다.

생성된 정보를 받은 후 _wt 타이머를 삭제하세요.

코드 복사 코드는 다음과 같습니다.

클리어타임아웃(_wt);

이런 식으로 JFYF 쌍의 PHP와 프런트엔드 AJAX는 매우 행복하게 협력할 것입니다~
관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿