0

UNIXコマンドをファイルに書き込んでいて、それを読み取って実行するにはPHPが必要です。ファイルから読み取る必要がある理由は、コマンドシンボルを直接スクリプトに入れると、スクリプトが台無しになるためです。これまでのところ私はこれを持っています:

<?php
$command = readfile("http://localhost/command.txt");
echo shell_exec($command);
?> 

これを実行すると、テキストファイルの値だけが取得され、コマンドは実行されません。これを行う方法はありますか?

助けてくれてありがとう

4

3 に答える 3

3

このreadfile()関数は、あなたが思っていることをしません。ファイルの内容をブラウザに出力し、読み取ったバイト数を返します。

代わりに、あなたが欲しいfile_get_contents()

$command = file_get_contents('http://localhost/command.txt');
echo shell_exec($command);

しかし、1つの質問:なぜWebサイトからコマンドファイルをプルするのですか?なぜローカルファイルシステムではないのですか?

于 2010-08-11T20:06:38.650 に答える
0

あなたはこのアプローチで問題を複雑にしすぎていると思います。文字列をphpスクリプトに直接入れて、何がうまくいかないかを示してください。

于 2010-08-11T20:05:27.187 に答える
0

popenだけを使用していない特別な理由はありますか?

http://www.php.net/manual/en/function.popen.php

于 2010-08-11T20:40:16.370 に答える