问题标签 [autoloader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
82 浏览

php - 创建目录并让所有文件每次都自动加载

我想设置一个配置目录,该目录中的所有文件都会自动加载到每个页面中。

我的目标是在其中放置一堆函数和定义,例如

等等,让这些文件每次都自动加载。任何人都知道我该怎么做

0 投票
3 回答
2982 浏览

php - 自定义 Composer 自动加载器

无论如何都可以在 Composer 中使用自定义自动加载器吗?

我有一些包含数百个类的库,它们按照 PSR-0 排列在目录结构中。

然而,它们也包括一个静态构造器(类似于 Java 的静态初始化器)。

我在作曲家之前使用的自动加载器会:

那么有没有办法扩展作曲家的默认自动加载器来做到这一点?

0 投票
1 回答
160 浏览

php - 如何在php中使用自动加载和命名空间?

我想使用 __autoload 功能。例如,我在同一个文件夹中有两个文件:

index.php,MyClass.php

MyClass.php 是这样的:

所以我想做的是使用 __autoload 来加载这个类。但是当我这样做时:

自动加载不起作用,因为该类位于命名空间中。

有什么帮助吗?

index.php 的示例:

0 投票
1 回答
1433 浏览

php - 命名空间和自动加载如何在基于 Linux 的系统 PHP 中工作?

所以这是我的代码:

上述文件称为 index.php。在 Framework 目录下的文件夹中有一个名为 StringMethods.php 的文件。

所以我的问题在这里 audoloader autoloads: .\Framework\StringMethods.php 因为我打电话:

$string = 框架\字符串方法。

所以 $file 变量实际上是= FrameWork\StringMethods。而我所做的是在末尾添加 .php 和开头的 .\ 。

但是 Framework\StringMethods 在 Linus 系统中会如何表现呢?目录分隔符不是Linux中的“/”吗?

所以它会尝试包括:./Framework\StringMethods.php

如果正确,如何更好地编码?

0 投票
1 回答
5552 浏览

php - Autoload Classmap in Laravel 4

I have a:

And I want use too:

But, in autoload_classmap.php, it's registred like that:

So, If I want one more 'ProjectsController' for public views, how I need to do?
What is better? 2 controllers (admin and public), or one (hybrid).

Thanks.

0 投票
3 回答
2447 浏览

php - PHP Autoloader 功能 - 仍然需要 require_once?

我开始关注 PHP 自动加载器。如果我有以下代码:

只要我的类被命名为适合上面的路径,我是否仍然需要使用 require_once

注意:我在网站的 header() 中包含了 __autoloading(加载的第一页。我是否需要在加载的每个页面上都包含它才能使其功能正常工作?我会假设是的,但我是不确定...

谢谢你

0 投票
1 回答
2991 浏览

zend-framework2 - ZF2 使用 composer 自动加载自定义模块

我正在尝试设置一个 ZF2 项目(与 zf2skeleton 略有不同),我想使用 composer 来处理所有自动加载,不仅来自供应商的自动加载(通过 composer 安装),还包括我创建的那些模块。

出于某种原因,我无法访问我的应用程序模块索引控制器。我认为它的自动加载不起作用......我只是不知道我可能做错了什么......

谢谢!

文件和数据如下:

这是我的文件夹结构:

主配置文件

索引.php

作曲家.json

应用程序配置

索引控制器

0 投票
2 回答
757 浏览

php - 使用 SplClassLoader 时出错

首先,我正在尝试使用以下 SplClassLoader - https://gist.github.com/221634

这是我的文件结构:

这是我的名为 Group (Group.php) 的测试类

这是调用所有内容的 index.php 文件:

我收到以下错误:

在将命名空间和路径传递给加载程序时,我已经尝试了所有可能的组合。它永远不会起作用。

更新 #1 - index.php 中的第 17 行:

更新 #2 - 配置信息

  • Apache/2.2.15(红帽)
  • PHP 5.3.3

更新 #3 - 我现在收到不同的错误消息。

代码到位:

我收到的错误消息:

0 投票
1 回答
123 浏览

php - 未找到/错误包含magento模型文件

我正在尝试向我们的 magento 商店添加一个模块(称为 paypal 支付费用),但一旦安装它,它就会在每个商店网站上产生错误。

似乎自动加载器试图包含带有下划线而不是斜杠的文件,但在文档中它说下划线由自动加载器自动替换为斜杠,所以我不明白是什么导致了错误。

提前致谢

塞缪尔

0 投票
2 回答
121 浏览

php - 奇怪的 PHP 类自动加载器行为 - PEAR 相关

我有一个奇怪的问题,我无法弄清楚。我正在使用PEAR从 PHP 页面发送邮件。该类Send_Mail正在工作(使用 SMTP 发送邮件),但我收到与我的autoloader.

在我的initialize.php文件中,我有这个:

在我的header.php文件中,我正在为该站点加载几个 PHP 类:

该错误是指我没有的 LOGIN 类。但是我搜索了整个站点文件夹,包括php并在以下位置找到了这两行C:\xampp\php\PEAR\Net\SMTP.php

当我注释掉包含的行时,LOGIN我得到了相同的警告,但是PLAIN当我注释掉这两行时,警告消失了(但随后 SMTP 身份验证失败)。

为什么会这样?

更新

这是我的新的autoloader

但是,当我 echo'classes' . $class . '.php'时,我得到了这个:

classes/.php

然后如果我把它改回不使用file_exists它就可以了,但echo仍然显示classes/.php