PHP - dirs sayısını okuyun ve sonra her bir belirtilen dosya adı için gerekli

2 Cevap php

Eğer :) böylece eğer bana yardım edin ben bir senaryo yapmak istiyorum ama ben php n00b oldukça değilim

Ne komut dosyası yapmak istiyorum:

  1. Ben "index.php" var.
  2. Ben "şablonları /" diyelim, bilinen bir klasörden alt dizinleri okumak için "index.php" istiyor
  3. Her alt-dizin "content.html" adlı bir dosya içerir.
  4. Endeks daha sonra mevcut alt-dizinleri her biri için () function ile "content.html" yükleyecektir.

Yardımlarınız için çok teşekkür ederiz!

2 Cevap

RecursiveDirectoryIterator belirlenen dizinde ve tüm alt dizinleri geçiyor ve SplFileInfo nesneler gibi tüm dosya sistemi öğeleri döndürür:

$iterator = new RecursiveIteratorIterator(
                new RecursiveDirectoryIterator($yourFilePath));

foreach($iterator as $file) {
    if($file->getFilename() === 'content.html') {
        $file->openFile()->fpassthru();
        // or 
        include $file->getRealpath();
    }
}

Kullan include Eğer PHP'nin yoluyla. Html dosyasını çalıştırmak istediğinizde, örneğin bunun değerlendirilmesi gerekiyor PHP kodu içeren zaman. Eğer değilse o daha hızlı bir fraksiyon olmalı, çünkü fpassthru kullanın. Ayrıca kullanabilir miyim readfile($file->getRealpath()).

ne elde etmek istiyorsunuz?

Eğer index.php farklı dosyaların içeriğini istiyor musunuz ya da bu dosyalardan bir bağlantı oluşturmak istiyorsunuz?

Eğer içeriği birleştirmek istiyorsanız, sadece html dosyaların içeriğini birleştirmek, çünkü geçersiz sözdizimi ile bir html dosyası olsun, çünkü bu yaklaşım yeterli değildir çünkü.

Bunu önlemek için bazı içerik ek ayrıştırma gerekir.

Alkış,

Dawit