jjzjj

autoload

全部标签

php - Composer 自动加载找不到类

我正在尝试创建一个MVC结构并使用composer自动加载所有内容。但我不断收到此错误:Fatalerror:UncaughtError:Class'App\Init'notfoundinC:\wamp64\www\activity\Public\index.phponline5|MainFolder|App|Public|Vendor|ACT|composer|autoload.php|composer.jsonComposer.json:{"name":"vendor/activity","description":"descrip","require":{"php":">=5.6

php - 我如何允许在 CakePHP 中自动加载自定义库?

您好,我正在使用CakePHP,我需要将一些供应商文件添加到自动加载中。这是正确的方法吗:在bootstrap.php中,我有以下代码:function__autoload($className){$classFile='../vendors/phprtf/'.str_replace('_','/',$className).'.php';//checkiffileexistsif(file_exists($classFile)){require$classFile;}}PHPRTFLite在各个子目录下有很多类文件。因此,将它们全部列出并不是一个好的选择。目前看来还可以。

php - 自动加载和命名空间

我已经使用PHP很长时间了,但现在我开始尝试更新的语言功能,例如namespace。我有一个关于自动加载的问题,我无法在网络搜索中找到合适的答案。假设我在不同的命名空间中有类:namespacefoo\bar\baz;classQuux{}namespacefred\barney\wilma;classBetty{}然后假设我有一个自动加载器,它假设namespace和目录结构之间存在1:1的映射:functionautoload($className){$className=str_replace('\\',DIRECTORY_SEPERATOR,$className);includ

php - 如何让 PHPUnit 在测试路径中排除 .svn 目录?

如何从phpunit.xml中让PHPUnit不在.svn目录中搜索?在大型项目中,随着.svn目录数量的增加,这会成为一个更严重的问题。我当前的配置:./phpunit/./phpunit/.svn当我运行strace-eopenphpunitphpunit/时,这似乎被忽略了我明白了:open("phpunit/",O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY)=3open("phpunit/.svn",O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY)=4open("phpunit/.svn/tmp"

PHP 命名空间和动态类名

我在试验spl_autoload、namespace和动态类名时遇到了一件“奇怪”的事情。我使用PHP5.3.2,像这样调用自动加载set_include_path(get_include_path().PATH_SEPARATOR."classes".PATH_SEPARATOR."utils");spl_autoload_extensions(".class.php");spl_autoload_register();现在进入核心。建议使用以下代码:new\User\Student;$name="\User\Student";new$name();这工作正常,文件classes/u

php - 我如何不在 php 中自动加载类?

我的php代码开头的自动加载器function__autoload($class_name){include_once$class_name.'.class.php';}导致调用newMongoClient();失败并出现错误Warning:include_once(MongoClient.class.php):failedtoopenstream如何为我的类使用自动加载器并仍然使用标准类?注意:MongoDb已与PECL一起安装,并且可以在删除自动加载功能后正常工作。php5.4.9上的mongo-1.3.0beta2 最佳答案

PHP 类自动加载

我有一个“简单框架”,其主要实例是$app。现在,实现自动加载器的最佳方法是什么(不使用Composer)。我需要的是有一个处理所有自动加载的类(支持各种命名空间)。我有一些方法/困境。起初我想我应该创建一个处理所有事情的“静态”类。但后来我想到了一些事情。如果我在实例化$app(包含所有路径)之前使用自动加载器,我需要在$app之外定义路径。而且,如果在自动加载类时发生错误,我将无法正确处理错误(错误处理程序在$app内,并在之后实例化)。然后我想到了依赖注入(inject),使自动加载器成为应用程序内的一个对象。这将解决错误处理问题,并且不需要我对路径进行硬编码或使它们成为全局变量

PHPUnit 无法通过命名空间自动加载找到类

我们有以下简化的文件夹结构:phpunit.xmlautoloading.phpindex.php/models/useruser.php.../settingspreferences.php.../teststest.php这是相关文件的内容:模型/用户/user.phpnamespacemodels\user;classUser{private$preferences;publicfunction__construct(){$this->preferences=new\models\settings\Preferences();}publicfunctiongetPreferenc

php - 为 PHP 编写 Bulletproof __autoload 函数

我试图将我的PHP__autoload函数定义为尽可能可靠和灵活。这是我的应用程序结构的分解:/dev(root)/my_app/php/classes-Class1.php-Class2.php-Class3.php/scriptsmyscript.php(thefileIhavetoincludetheclassesin)这很简单。我的问题是:我如何编写我的__autoload函数,以便我可以包含我想要的任何类,而不管调用文件在目录结构中的嵌套深度如何。我知道它与__FILE__、realpath和dirname函数有关,但我不确定适当的组合方式他们实现我所追求的灵active。这

PHP 自动加载 MVC

我在PHP中遇到了__autoload函数,想将它用于我的MVC文件夹结构。功能本身很简单,但是如何在某种命名后实现动态文件夹扫描,请看示例:-application--controller--models---entities----house---factories----houseFactory--views-library-public正如您可能认识到它非常接近于基于zend框架或其他框架-正如我来自那些,但是我想开发一个没有框架的网站并且刚开始编写bootsrap文件。也许有人可以帮我自动加载-我认为-高级用法。我的类名会像模型_实体_房子要么模型_工厂_房屋工厂witch可