0

)を使用するfile_exists(と、常に false が返されます。しかし、ファイルは実際に存在し、require. これは私のコードです:

// Creating dependency lists.
$data_dependency = array("mysql", "oracle", "postgresql", "sqlite", "access");

// Calling the dependecny files.
foreach ($data_dependency as $list) {
    $list = "class.data.$list.php";
    _system::debug("Calling required class $list ...");

    if (file_exists($list)) {
        include($list);
        _system::debug("Calling $list was successfull.");
    } else {
        _system::debug("Calling $list was failed. Now we close the system load.");
        exit("Calling $list was failed. Now we close the system load.");
    }
}

ページを読み込むと、ページは常にexit(). file_exists()その理由は、関数が常に false を返すためだと思います。

4

4 に答える 4

2

この関数はFALSE、セーフ モードの制限によりアクセスできないファイルに対して戻ります。

$_SERVER['DOCUMENT_ROOT']ファイル パスで変数を使用します。

于 2014-09-17T13:09:33.533 に答える
1

ex : $_SERVER['DOCUMENT_ROOT']絶対パスではなく相対パスを使用してみてください

于 2015-11-03T07:14:04.533 に答える
0

file_exists()についてPhp.net は次のように述べています。

この関数は、セーフ モードの制限によりアクセスできないファイルに対して FALSE を返します。ただし、これらのファイルが safe_mode_include_dir にある場合は、引き続き含めることができます。

これは、包含が機能し、存在チェックが機能しないという事実を説明できます。

http://www.php.net/manual/en/function.file-exists.php

于 2013-03-23T14:22:01.363 に答える
-1

$listforeach ループの が正しく設定されていない可能性があります。試しました$list="class.data.".$list.".php";か?

于 2013-03-23T14:17:55.887 に答える