2

重複の可能性:
シェル スクリプトを安全に実行できます。実行前に変数をエスケープする

$_SERVERバックグラウンド プロセス用の別のスクリプトを実行するために、phpexec()関数を介してデータを渡したいと考えています。
単純なパラメーターを渡すには、次のようにします。

exec("/usr/bin/php -f bg.php parameter1 > /dev/null &");

しかし、この関数に配列を直接渡すことは不可能だと思います。だから私は試しserialize($_SERVER)ました。しかし、今はもっと大きな問題があります。引用符、セミコロン、およびその他の多くの文字は、シェル コマンドを分解し、正しく機能しません。

では、この問題を解決するための解決策は何ですか?

4

1 に答える 1

3

多分あなたが探しているのは: http://php.net/manual/en/function.escapeshellarg.php

于 2012-10-25T21:09:07.313 に答える