私はPHPからlesscコンパイラを実行し、トラブルを抱えています。私はSymfonyを使用していて、sfLESSPluginの使用を試みましたが、失敗しました。ページが更新されるたびに、私のLESSファイルは1つのCSSファイルにコンパイルされるように、私は、ページのレンダリング前に実行されるフィルタで私のコードを入れてきました(手動で私は変更を加えるたびに再コンパイルしたくありません、少なくとも私が開発している間)。これは、エラーを返しPHPからLESSコンパイラを実行するにはどうすればいいですか?
$fs = new sfFilesystem();
$command = '/Users/jordanb/node/node_modules/less/bin/lessc less/bootstrap.less css/bootstrap.css';
try
{
$fs->execute($command, null, array($this, 'throwCompilerError'));
}
catch (RuntimeException $e)
{
return false;
}
::(、それはは、proc_open()呼び出しを実行symfonyのに深く掘り127のエラーコードで、「問題の実行コマンド」)と、ここで私がしようとしてきたさまざまなバリエーションがありますproc_close()を実行します。一部のオンライン調査では、エラーコード127はコマンドが見つからなかったことを示しています。
コマンドラインでまったく同じコマンドを実行すると、うまく動作します。
私は、/ Users/jordanb/node/node_modules/less/bin/lesscにchmod 777を実行して、権限の問題ではないことを確認しました。まだ動作しませんでした。
は私もちょうど「lessc」の代わりに動作しませんでした完全なパスを、試してみました。私は私に "/ユーザ/ jordanb /ノード/ node_modules /以下/ binに/ lessc" を与える "とlessc" と入力し、私のクラスパスにlessc追加しました。私はまた、シンプルを試してみました:何もしていないようでした
shell_exec('lessc less/bootstrap.less css/bootstrap.css');
。私は出力をPHPエラーログとテキストファイルに出力し、どちらの場合も出力は空でした。私はまた、この場合にフルパスを使用してみました。