1

パス (ディレクトリを指す) をテキスト ファイルに保存し、必要に応じて PHP でパスを開きたいと考えています。これは非常に単純ですが、実際には機能しません。

$dir = file_get_contents('./dir_file');
$dir_content = get_fname($dir);

function get_fname($dir) {
    $dirhandle = opendir($dir);
    if (!dirhandle) { exit; }
    .........
}

$dir の値は、テキスト ファイル内の値です。コードが機能しません。関数は if ステートメントで終了します。

最初の行を次のように置き換えてみました

$dir = '/home/user/work'; //which is the path stored in the text file.

できます。だから私はそれがopendirの問題だと思う。この問題の原因がわかりません。

どんな助けでも大歓迎です。どうもありがとう。

4

1 に答える 1

0

読み込んでいるファイルに、実際のパス部分の後に改行、スペースなどが含まれているかどうかを確認してください。それらをopendirに渡すと、それらのリテラル文字を含むディレクトリが検索され、ほとんどの場合失敗します。

trim()呼び出しを追加すると役立つ場合があります。

$dir = trim(file_get_contents('./dir_file'));

これにより、そのような空白文字が削除されます。

于 2012-03-08T15:51:28.577 に答える