PHPUnit file_exists tanımıyor () değil

3 Cevap php

Ben NetBeans birim test dosyaları ile bir proje kurdum. I C:\www\foo\_tests\TestAutoload.php için ön yükleme kurmak ve bu dosyaya basit özdevinimli_yükle yöntemi koymak:

function __autoload( $class_name ) {
    // series of ifs
    if ( ... ) {
        $file_name = ...
    }

    if ( file_exists ( $file_name ) ) {
        require_once( $file_name );
    } else {
        echo "autoload error";
    }
}

Benim testlerin tüm autoload bu şekilde başarısız. Onlar her zaman çıkış sadece "Autoload hatası". I file_exists if kontrol ve sadece olursa olsun $file içinde ne require_once( $file ) kullanmak istemiyorsanız, mükemmel çalışıyor.

Herkes önce böyle bir şey karşılaştı? Ben sadece dosya var olup olmadığını kontrol etmiyor tarafından çözülemedi bir şey değil, ama bir şekilde hile eğer bu yapar ve neden ben ilgileniyorum.

3 Cevap

Sen onlar değilse, örneğin, zaten mutlak dosya üzerinde file_exists() kullanarak denemek isteyebilirsiniz (Amphetamachine cevabı) başı olarak, file_exists() PHP include_path ayarını kullanın olmadığından file_exists($file_name), file_exists(dirname(__FILE__) . '/../myclasses/' . $file_name) olabilir.

file_exits fonksiyonunda mutlak yol vermek, bu dosya yolu file_exits u Worte ne çalışmasını düzeltmek değil olabilir