代码之家  ›  专栏  ›  技术社区  ›  Ondrej Slinták

PHPUnit无法识别文件\u exists()

  •  2
  • Ondrej Slinták  · 技术社区  · 14 年前

    C:\www\foo\_tests\TestAutoload.php

    function __autoload( $class_name ) {
        // series of ifs
        if ( ... ) {
            $file_name = ...
        }
    
        if ( file_exists ( $file_name ) ) {
            require_once( $file_name );
        } else {
            echo "autoload error";
        }
    }
    

    我所有的测试都以这种方式自动加载失败。它们总是只输出“自动加载错误”。如果我不检查 file_exists require_once( $file ) 不管里面有什么 $file ,它工作得很好。

    以前有人遇到过这样的事吗?这不是我不检查文件是否存在就无法解决的问题,但我感兴趣的是它为什么这样做,以及我是否可以欺骗它。

    3 回复  |  直到 14 年前
        1
  •  2
  •   pinkgothic sudip    14 年前

    你可以试着用 文件\u存在() file_exists($file_name) 可能是 file_exists(dirname(__FILE__) . '/../myclasses/' . $file_name) ,因为(根据安非他明的回答), file_exists()

        2
  •  4
  •   amphetamachine    14 年前
        3
  •  1
  •   sam    14 年前

    如果在file\u exits函数中给定绝对路径,则该函数中的文件路径可能不正确