PHP腳本運作成功,卻無反應

WBOY
發布: 2016-08-04 09:20:58
原創
2041 人瀏覽過

有個以TP3.1框架開發的功能,計算完成後要求回傳{"status":0}
程式碼最後為

<code> ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);</code>
登入後複製
登入後複製

運行結果為

<code>[ 2016-07-18T14:50:36+08:00 ] DEBUG: 运行时间:486.8268s
[ 2016-07-18T14:50:36+08:00 ] DEBUG: {"status":0}
[ 2016-07-18T14:50:36+08:00 ] DEBUG: echo success</code>
登入後複製
登入後複製

但是頁面沒 echo json_encode($data);
F12查看http請求就一直沒有返回,但是計算卻運行完成了,程式碼基本上都貼全了,只要刪除一部分計算時間長的程式碼,就可以得到返回值,但我已經設定了max_execution_time,計算也沒超過時間
PHP腳本運作成功,卻無反應
PHP腳本運作成功,卻無反應

回覆內容:

有個以TP3.1框架開發的功能,計算完成後要求回傳{"status":0}
程式碼最後為

<code> ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);</code>
登入後複製
登入後複製

運行結果為

<code>[ 2016-07-18T14:50:36+08:00 ] DEBUG: 运行时间:486.8268s
[ 2016-07-18T14:50:36+08:00 ] DEBUG: {"status":0}
[ 2016-07-18T14:50:36+08:00 ] DEBUG: echo success</code>
登入後複製
登入後複製

但是頁面沒 echo json_encode($data);
F12查看http請求就一直沒有返回,但是計算卻運行完成了,程式碼基本上都貼全了,只要刪除一部分計算時間長的程式碼,就可以得到返回值,但我已經設定了max_execution_time,計算也沒超過時間
PHP腳本運作成功,卻無反應
PHP腳本運作成功,卻無反應

<code class="php">
 ini_set("max_execution_time", "800");
 
  ...

 $data['status'] = 0;
 Log::write(json_encode($data),Log::DEBUG);
 echo json_encode($data);
 Log::write('echo success',Log::DEBUG);

 exit;//退出脚本
</code>
登入後複製

$data['status'] = 0;
echo 1;
Log::write(json_encode($data),Log::DEBUG);
echo 2;
echo json_encode($data);
echo 2;
echo json_encode($data);

echo 3; Log::write('echo success',Log::DEBUG);

這樣試試 看運行到這裡沒

做的ajax請求?瀏覽器F12看看請求的連結有沒有成功,有沒有收到回覆。給的資訊太少了,補充詳細一點。

看不出什麼明顯的問題,用的xhr做的請求,是不是設定了timeout?導致計算時間過長就忽略回傳值了。順便,建議在echo json前面加上header('Content-Type: application/json');

🎜
相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!