【问题标题】:Can't find where vendor is loaded找不到供应商的加载位置
【发布时间】:2012-03-12 20:28:25
【问题描述】:

我无法确定某个供应商在 CakePHP 中的加载位置。

在这个脚本的某个地方,供应商文件夹 tcpdf 正在运行。我在运行的相关文件中找不到任何 App:import()。

视图文件不知何故得到了价值 $pdf ,这是一个我找不到的地方启动的 tcpdf 类。 它似乎不在该页面上运行的任何控制器或模型中。在任何配置文件中也找不到单词“pdf”。

所以有些东西在我不知情的情况下正在运行。有什么想法吗?

我是 CakePHP 新手,主要与 Codeigniter 一起使用,并且可以使用已经创建且功能正常的 CakePHP 站点。

这里真正奇怪的是我更改了供应商文件夹的名称,脚本仍然运行,没有更改任何配置!路径应该丢失,但事实并非如此。我猜这意味着所有供应商文件都是通过 php 脚本或其他方式搜索的?

这快把我逼疯了,所以请让我把所有想法都放在哪里照顾$pdf = new TCPDF();

编辑: 我想做的只是更新 tcpdf 版本,但是我找不到在哪里做。替换当前文件似乎有风险。

摩尔编辑: 我运行了那个调试并得到了这个:

要求 - APP/vendors/tcpdf_oldz/tcpdf.php,第 1 行
App::__load() - CORE/cake/libs/configure.php,第 956 行
App::__find() - CORE/cake/libs/configure.php,第 934 行
App::import() - CORE/cake/libs/configure.php,第 861 行
要求 - APP/views/helpers/pdf.php,第 2 行
App::__load() - CORE/cake/libs/configure.php,第 956 行
App::__find() - CORE/cake/libs/configure.php,第 934 行
App::import() - CORE/cake/libs/configure.php,第 861 行
RequestHandlerComponent::renderAs() - CORE/cake/libs/controller/components/request_handler.php,第 569 行
RequestHandlerComponent::startup() - CORE/cake/libs/controller/components/request_handler.php,第 193 行
Component::startup() - CORE/cake/libs/controller/component.php,第 100 行
Dispatcher::dispatch() - CORE/cake/dispatcher.php,第 229 行
[main] - APP/webroot/index.php,第 90 行

我已经检查了相关文件,但我找不到任何与一切开始的地方以及它如何加载相同文件的联系,即使我更改了文件夹的名称。

【问题讨论】:

    标签: php cakephp tcpdf


    【解决方案1】:

    尝试在文件顶部或适当的函数顶部临时粘贴一个跟踪调用,以跟踪它被包含的位置:

    pr( Debugger::trace() ); exit;
    

    【讨论】:

    • 您好,很抱歉回复晚了。你能看看我更新的文字吗?
    • 很难从这里判断,但请查看APP/views/helpers/pdf.php。检查您的控制器是否有包含“pdf”帮助程序的$helpers =。它可能在插件中。
    猜你喜欢
    • 1970-01-01
    • 2018-10-03
    • 2016-10-28
    • 1970-01-01
    • 2015-07-04
    • 2014-10-29
    • 1970-01-01
    • 1970-01-01
    • 2019-02-25
    相关资源
    最近更新 更多