このコマンドをコマンド ライン (Mac OS X) で実行すると、次のようになります。
echo -n "hello" > foo-cmd.txt
期待どおりの結果が得られます。つまり、末尾に改行がないfoo-cmd.txt" " を含むファイルです。hello
ただし、この PHP コードを実行すると、次のようになります。
<?php
shell_exec("echo -n \"hello\" > foo-php.txt");
?>
foo-php.txtテキスト " -n hello" の後に改行が続くファイルを取得します! 言い換えれば、引数は引数-nとして扱われるのではなく、出力として忍び込みます!
この問題を解決するにはどうすればよいですか?