3

ターミナルで、空白を含む文字列を param として渡す方法。実際には、空白の後に続く部分をスキップし、最初の単語のみを取ります。

$word = 'soccer ball'
shell_exec('casperjs test.js --word='.$word);

では、このコマンドのみを実行する空白をエスケープするにはどうすればよいですか

casperjs test.js --word=soccer
4

2 に答える 2

2

あなたが説明するような場合(シェルのスペースの隣に他の特殊文字があります)、PHPには次のescapeshellarg機能があります。

$word    = 'soccer ball';
$command = sprintf('casperjs test.js --word=%s', escapeshellarg($word));
$result  = shell_exec($command);

の値を1つの引数$wordとして保持するように注意します。

casperjs test.js --word='soccer ball'

同様に参照してください:

于 2012-10-16T23:56:11.287 に答える
2

引用符で囲んでみてください。

casperjs test.js --word="soccer ball"
于 2012-10-16T23:36:09.117 に答える