稱爲捲曲的文件我有呼叫cli.php怎麼知道通過CLI或apache2handler
我通過命令行執行它。呼叫cli.php的
代碼
echo "File 1 ".php_sapi_name(); // returns cli
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://localhost/curltest/step1.php?productId=12");
$response = curl_exec($ch);
curl_close($ch);
step1.php的代碼
echo " step1 ".php_sapi_name(); // returns apache2handler
if(php_sapi_name()==='cli') {
// To do execute code regarding cli
}
if(php_sapi_name()==='apache2handler') {
// To do execute code regarding apache2handler
}
當通過瀏覽器管理員身份運行step1.php應該執行apache2handler代碼和cli diff的一個。 我從呼叫cli.php得到的productId。所以,我需要從呼叫cli.php 所以我想知道調用捲曲有沒有辦法找到通過CLI文件的回報捲曲所謂的CLI而不是apache2handler或其他任何建議嗎?
這實際上有點不清楚。但我知道你在step1中選擇了第二個結果,這對你來說是意想不到的,爲什麼要返回'cli'呢?它通過由捲曲的HTTP請求被調用,肯定是_not_執行的請求'cli' ......你不得不使用像'EXEC()'爲,而不是'捲曲()'... – arkascha
@arkascha感謝你的觀點,希望更新的問題是明確的。 –
由於兩者在相同的環境中執行,因此您在兩種不同的調用之間使用了錯誤的策略。你可以做的是做以下兩個選擇之一:1.向'curl'調用添加請求參數,它允許在接收端有所不同,或者使用http請求頭,這也可以在請求端進行檢查。 – arkascha