Interface 'Server\IDatabase' not found in

来源:6-1 [php]适配器模式

小eyes

2014-11-26 22:29

老大我的程序和你一模一样,结果运行的时候报这个错误,是自动载入函数的问题,能否发下你的自动载入函数如何实现


写回答 关注

5回答

  • SevenMonths
    2016-05-18 16:11:50

    你把Database.php 文件名字改成 IDatabase.php了? 那原来的工厂模式,单例模式调用的那些不白瞎了?

  • SevenMonths
    2016-05-18 15:58:03

    D:\xampp\htdocs\immoc/IMooc/IDatabase.php   

    还是路径问题,他会调用IDatabase.php  这本身就是错的。

    自动加载那出问题了,我觉得是。

    在 MySQL.php  MySQLi.php  PDO.php  中手动引入才不会报错。

    require BASEDIR.'/'."IMooc\Database.php";

    use IMooc\IDatabase;

    一直不知道是为什么,求问楼主怎么解决的。


  • zejiaaaa
    2015-01-14 22:36:07

    怎么会报这个错误 syntax error, unexpected 'interface' (T_INTERFACE), expecting identifier (T_STRING)

  • 小eyes
    2014-11-26 22:43:43
    路径问题解决了


    小eyes 回复zejiaa...

    因为你的类名与文件名不一样,不符合psr标准!

    2015-01-28 22:47:32

    共 2 条回复 >

  • 小eyes
    2014-11-26 22:37:25

    对于psr-0来说interface IDatabase应该不能和类Database写在相同的文件中,不然使用use Server\Idatabase 会去调用Server\Idatabase.php文件,而Server\Idatabase.php文件并不存在,所以报错。


大话PHP设计模式

帮助PHPer具备使用设计模式解决工程中复杂逻辑的能力

62160 学习 · 230 问题

查看课程

相似问题