PHP File_exists ve joker

3 Cevap php

Bunun keyfi bir uzantısı olan bir dosya için bir dizin arar, böylece PHP File_exists işlevi yazmak için bir yolu var mı. Örneğin, ben bir dosya "merhaba" denirdi biliyordu varsayalım, ama uzantısı bilmiyordum, nasıl *. Merhaba denilen bir dosya için aradı ve bu dosyanın adını döndürülen bir fonksiyon yazmak istiyorsunuz? Bildiğim kadarıyla söyleyebilirim, File_exists sadece bir dize arar.

Teşekkürler.

3 Cevap

You're looking for the glob() function.

file_exists arama her türlü yapmaz: zaman knowingf adını sadece, bir bir fle var olup olmadığını bilmek sağlar.

Ve, PHP> = 5.3 ile, yeni GlobIterator kullanabilirsiniz.


As an example with glob(), the following portion of code :

$list = glob('temp*.php');
var_dump($list);

Bana bu çıktıyı verir:

array
  0 => string 'temp-2.php' (length=10)
  1 => string 'temp.php' (length=8)


While this one :

$list = glob('te*-*');
var_dump($list);

Yes, with two * ;-)

Bana verecek:

array
  0 => string 'temp-2.php' (length=10)
  1 => string 'test-1.php' (length=10)
  2 => string 'test-curl.php' (length=13)
  3 => string 'test-phing-1' (length=12)
  4 => string 'test-phpdoc' (length=11)

Eğer biraz daha fazla denetime gereksinim ve ön PHP 5.3 üzerinde iseniz bir DirectoryIterator veya RecursiveDirectoryIterator kullanabilirsiniz. Hem katma kontrol ve manipülasyon için büyük bir fonksiyon çok şey var.

PHP docs DirectoryIterator altındadır ve RecursiveDirectoryIterator