PHPを介してディレクトリ内のすべてのファイルをリストする簡単な方法に取り組んでいます。これを行うphp.netから直接コードを持っていますが、シンボリックリンクへのアクセスに問題があるようです。(ディレクトリへの) シンボリック リンクにアクセスしようとすると、getcwd() は元の作業ディレクトリを表示します。
index1.php はこのためのファイルです。私はアーチLinuxで実行しています。
ls -lh
ディレクトリの。パーミッションは適切に見えますか?
[drake@unimatrix434 .hiddenVideo]$ pwd
/home/drake/public_html/.hiddenVideo
[drake@unimatrix434 .hiddenVideo]$ ls -lh
total 224K
-rw-r--r-- 1 drake users 921 Nov 13 20:17 index1.php
-rwxr-xr-x 1 drake users 213K Nov 13 15:19 index.php
drwxr-xr-x 2 drake users 4.0K Nov 13 20:05 testDIR
lrwxrwxrwx 1 drake users 26 Nov 13 14:10 Video -> /media/storage_pool/Video/
PHP コード セクション:
<?php
echo "<div>" . getcwd() . "</div>";
chdir('Video');
echo "<div>" . getcwd() . "</div>";
echo "</br>";
//list files
if ($handle = opendir('.')) {
echo "<div>Directory handle: $handle</div>";
echo "<div>Entries:</div>";
while (false !== ($entry = readdir($handle))) {
echo "<div>$entry</div>";
}
closedir($handle);
}
?>
どちらが得られますか:
/home/drake/public_html/.hiddenVideo
/home/drake/public_html/.hiddenVideo
Directory handle: Resource id #3
Entries:
..
index.php
.
Video
index1.php
testDIR
アイデアや提案はありますか?私はこれがうまくいくと思っていたでしょう...