私たちの先生はウェブサーバーを持っていて、私たちはいくつかのことをテストすることができます. Putty でサーバーに接続し、次のコマンドを試しました。
echo "i 4 r 255 g 0 b 0." > /dev/ttyACM0
ttyACM0
ストリームをシリアル インターフェイスにリダイレクトする仮想ファイルです。この特定のコマンドは、RGB LED の色を変更します。exec
しかし、同じコマンドは php ではorでは機能しませんshell_exec
:
<?php
// Script saved at /home/STUDENT_NAME/public_html/blink.php
echo shell_exec("echo \"i 4 r 255 g 0 b 0.\" > /dev/ttyACM0"); // Doesn't work
echo shell_exec("echo \"Hello\""); // Returns "Hello"
?>
2番目の呼び出しが機能するため、私はそれを知ってexec
おり、shell_exec
無効になっていませんshell_exec
。私の次のアイデアは を使用するfopen("php://memory", "a");
ことでしたが、これらのラッパーの使用方法がわかりません。だから私の質問:
- これらのラッパーを正しく使用するには? (多分好き
"php://memory/dev/ttyACM0"
) - より良い解決策はありますか?