草庐IT

autoloading

全部标签

php - 多个 spl_autoload_register 问题

我正在开发自定义框架。当我尝试动态化我的类(class)调用时遇到了一个问题。这是我的文件的视觉效果:所以我决定为每个文件夹(库、Controller和模型)创建一个不同的函数:functionautoloadLibs($class){//requirethegeneralclassesrequire'libs/'.$class.'.php';}functionautoloadModels($class){//requirethemodelsclassesrequire'models/'.$class.'.php';}functionautoloadControllers($class

php - 在没有 composer dump-autoload 的情况下在 Laravel 中加载自定义 php 文件

我是Laravel的新手。我一直在关注如何在没有dumpautoload的情况下将自定义php库加载到Laravel4,2的线程。到目前为止,我不能或我调用的函数不正确。我目前拥有的是:我文件autoload_classmap.php我已经添加了我的类'ImageResize'=>$baseDir。'/app/libraries/ImageResize.php',在文件autoload_static.php中我添加了'ImageResize'=>__DIR__。'/../..'。'/app/libraries/ImageResize.php',然后在我的Controller中我想显示这

PHP5 框架 : Autoloading and Opcode Caching

许多框架利用spl_autoload_register()来动态加载类(即Controller和模型)。有几篇关于自动加载和操作码缓存问题的帖子。特别是一篇帖子有@cletus的回复,其中引用了@Rasmus做出的一些陈述,这些陈述被证明对那些使用APC作为操作码缓存的人来说是令人讨厌的:DoPHPopcodecacheworkwith__autoload?对于不影响操作码缓存性能的自动加载的任何可能替代方案,似乎没有任何讨论。有没有办法解决自动加载类未添加到字节码缓存的问题?如果没有,是否有任何替代方法可以动态加载将被缓存的类? 最佳答案

php - 如何通过 composer autoload 加载特征

我已经尝试将我的traits文件夹添加到composer自定义自动加载,但这不起作用并返回错误。那么这是否可能通过Composer自动加载特征?非常感谢您的回答。我的特点:traitUser{publicfunctionis_email_unique($email){return$this->User->get_one_by_email($email)?FALSE:TRUE;}publicfunctionis_username_unique($username){return$this->User->get_one_by_username($username)?FALSE:TRUE;}

php - 如何在 PHP 代码中调用 __autoload()

我是php的新手,我想在我的代码中使用php5的__autoload功能。我在index.php中写了下面的代码,但我不明白应该如何以及何时调用__autoload函数。function__autoload($class){if(file_exists($class.'.php')){include($class.'.php');}else{thrownewException('Unabletoloadclassnamed$class');}}我看过thisthread也但是我的应用程序中没有这样的自动加载器类。是否每个应用程序都需要一个单独的类才能使用自动加载?如果不能,我可以像上面

php - 有一种方法可以在不使脚本崩溃的情况下使用 CLASS_EXISTS 和 __autoload 吗?

例子:类名.php在另一个文件中...foreach($FILENAMES_WITHOUT_DOT_PHPas$name=>$value){if(class_exists($value)){echo"ClassNameexists...";}else{echo"ClassNamedoesn'texists....";}}这段代码的输出是:这会导致全部崩溃取而代之的是:类名不存在....自动加载功能:function__autoload($var_class){require_once("$var_class.php");} 最佳答案

php - 为什么我的 Composer autoload.php 不起作用?

我有一个项目,我使用Composer并通过它导入很多东西...我需要在我的索引(项目的根目录)中使用autoload.php,isteadSlim、Mongo、Twig工作得很好。但是,当我调用一类Respect/Validation时,它不起作用;如果我只是使用Respect/Validation错误是:在(我需要的文件路径)中找不到类“Respect\Validation\Validator”。如果我尝试在这里也要求autoload.php,错误是:**警告**:require_once(vendor/autoload.php):无法打开流:在(我需要的文件路径)中没有这样的文件或

php - 运行 phpunit 时未找到 fatal error 'File/Iterator/Autoload.php'

我尝试在phpunit中运行测试类时遇到此错误。C:\xampp\htdocs\unittest>phpunitUnitTestusertest.phpPHPWarning:require_once(File/Iterator/Autoload.php):failedtoopenstreamNosuchfileordirectoryinC:\xampp\php\pear\PHPUnit\Autoload.phponline45PHPStacktrace:PHP1.{main}()C:\xampp\php\phpunit:0PHP2.require()C:\xampp\php\phpun

php spl_autoload_register vs __autoload?

你好,除了我们可以使用自己的名字自动加载外,使用这个有什么不同吗?有什么性能差异吗?他们如何在内部运作?之间function__autoload_libraries($class){include_once'lib.'.$class.'.php';}spl_autoload_register('__autoload_libraries');对比function__autoload($class){include_once'lib.'.$class.'.php';} 最佳答案 __autoload通常被认为是过时的。它只允许一个自动加

php - 在 php __autoload() 中将 CamelCase 转换为 under_score_case

PHP手册suggests自动加载类,如function__autoload($class_name){require_once("some_dir/".$class_name.".php");}并且这种方法可以很好地加载保存在文件my_dir/FooClass.php中的类FooClass像classFooClass{//someimplementation}问题如何才能使用_autoload()函数并访问my_dir/foo_class.php文件中保存的FooClass? 最佳答案 你可以像这样转换类名......functi