私はいつも、PHP関数file_get_contents
とreadfile
は、ファイルタイプに関係なく、どのファイルでもPHPコードを実行することを常に確信していました。私はこれを複数の設定で試してみたところ、いつもうまくいきました。file_get_contentsとreadfileはPHPコードを実行しますか?
私はこのhereに関する質問を受け取りましたが、ユーザーはそうではないと思われるようです。
私は関数のPHPドキュメントを見ましたが、コード実行については言及していません(これはセキュリティの深刻な影響があるため、通常はこれが当てはまると思います)。
私もそれを探して、関数がPHPコードを実行しないという多くの主張を見つけました。例:
readfileでは、サーバー上のコードは実行されないため、問題はありません。 「PHPのfile_get_contentsコードの実行」を検索source
も、それは確かに正常に任意のPHPコードを実行するかどう奇妙に思える取り出さPHPコードを実行しようと、様々な質問を返します。
また、PHPコードの実行を尋ねるone questionが見つかりました。他の人にも実行が行われるようです。
だから私の質問は以下のとおりです。
- 機能
file_get_contents
とreadfile
が取得したファイルにPHPコードを実行しますか? - これはphp.iniの設定によって異なりますか?もしそうなら、どんな設定ですか?
- PHPのバージョンによって異なりますか?その場合、どのバージョンが影響を受けますか?
- 通常そうでない場合、セットアップでPHPコードを実行する理由は何ですか?コードを実行する機能を«関数リファレンス/プロセス制御拡張»に記載されているが
セキュリティよりもプログラミング上の疑問があるようです。 php.netマニュアルを確認しましたか?私には実行がないようです... –
私は本当に "その作品"のコードのサンプルを見たいと思います... – deceze