PHPのexecが機能しない

PHPのexecが機能しない

私はラズベリーパイ3からPHP 7.0にApacheを実行しています。コマンドラインでカールコマンドを使用すると正常に動作します。

ただし、PHPコードでこのコマンドを使用すると、何もしません。これは何か知っていますか?

リソースID#5を取得します。何が起こったのかはわかりませんが……

以下を試しました。

  • コマンドの最後に2>&1を追加します。
  • sudo の前にあるコマンドを実行します。
  • www-dataの権限の変更(Apacheを実行しているユーザーかどうかわからない)

ベストアンサー1

PHPでは、すべてのリソースID#は物理的であるかどうかにかかわらず、一種のファイルハンドルを表します。通常、素晴らしいデータを取得する前に、ハンドルで何らかの読み取り操作が発生します。 cURLとPHPは通常次のようになります(から抜粋)。文書)

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_HEADER, TRUE); 
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1);
$data = curl_exec($ch); 
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); 
curl_close($ch);

おすすめ記事