php dosyaları için göreli yolu taraması yapmaz

4 Cevap php

İşte benim geçerli kod (php benim ilk denemem için gurur duyuyorum) olduğunu

<?php
$files = glob("/jobops/*.txt");
$indexcount = count($files);
sort($files);
print("<br>"+$indexcount+"<br>");
foreach ($files as &$file)
{
    print("<a href=\"$file\">$file</a><br>");
}
?>

Sorun yine glob (bu komut bulunur) kök dizininde çalışıyor ama belirli bir klasöre işaret zaman 0 Bulunan dosyaları döndürür.

(Aşağıda) dizin yapısını gösteren benim ftp istemcisi bir ekran kapmak dahil ettik

bu yüzden ben glob yanlış yapıyorum karıştı

Script ve tıklayın eğer 0 Bulunan dosyaları geri döneceği yer www.markonsolutions.com/test.php olduğunu

alt text

4 Cevap

"/jobops/*.txt"

* nix üzerinde mutlak bir yol olduğunu, size kullanmanız gereken bir php komut dosyası olarak aynı dizinde dizine işaret etmek istiyorum:

"jobops/*.txt"

hangi göreli bir yol olduğunu.

Dedi

"/ Jobops / *. Txt"

bir "/" (eğik çizgi) ile başlar beri mutlak bir yolu

Göreceli yollar, bu yüzden, bir eğik çizgi ile başlayan değil

"Jobops / *. Txt"

". / Jobops / *. Txt"

".. / Jobops / *. Txt"

tüm göreceli ... nokta: relative to what?

On OSs it is relative to the directories enumerated in the environment variable PATH (and often the current working dir is the first one listed into this variable, leding to the erroneous guess that "Jobops / *. Txt" is referred to the jabops dir in the current dir!)

PHP, o zaman elbette sabit kod bunları ima değil, mutlak yolları kullanmak daha iyidir, size ortamıdır.

Ben aşağıdakileri yapmanız öneririm:

dirname(__FILE__).'/jobops/*.txt'

olduğu how to use paths in PHP, correctly

Eğer bir web sunucusundan bu çalışıyorsa? Bu kullanıcı olabilir ve web sunucusu Grup ayarları diğer dizinlere erişime izin vermez? Bu bir izin sorunu var mı? Ipuçları için web sunucunun hatalar.log ve access_logs edin.

belki bir şey gibi:

$files = glob($_SERVER['DOCUMENT_ROOT']."/jobops/*.txt");