PHP 開発で、特定のファイルをインクルードする場合、通常のコードは次のようになります:
コードをコピーします コードは次のとおりです:
if(is_file($fileName))
require $flleName;
Windows と Linux で実行する場合は問題ありません。D:/web/webServer/A.php ファイルをインクルードするとします
D:/web/webServer/a.php が値を渡すときに誤って表現されました。Windows で実行すると、Windows はサイズを区別しないため、D:/web/webServer/A.php も含まれてしまいます。 Linux で報告されました
Windowsで読み込むときに大文字と小文字を区別してみてはどうでしょうか?コードは次のとおりです:
コードをコピーします コードは次のとおりです:
if(is_file($fileName)){
//PHP_OS 現在実行中のオペレーティングシステム
if(strstr(PHP_OS,'WIN')){
//realpath( $fileName) はファイル名 /web/A.php の大文字と小文字を変換します。 A.php が存在せず、a.php は /web/a.php を返します
If(basename(realpath($fileName) ) == ベース名( $fileName))
$fileName が必要です。
http://www.bkjia.com/PHPjc/825313.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/825313.html
技術記事 php の開発では、特定のファイルをインクルードする必要があります。 通常のコードは次のようになります。 以下のようにコードをコピーします。 ?php if(is_file($fileName)) require $flleName; で実行しても問題ありません。 Windows または Linux...