“如何禁用”;始终包括;在Composer autoload_static.php中初始化

“如何禁用”;始终包括;在Composer autoload_static.php中初始化,php,composer-php,autoload,Php,Composer Php,Autoload,autoload_static.php中的Composer使用类,我不需要在每个应用程序请求中使用它们 'd5fa61a7f6cbc1df09dd4df84549a2dc' => __DIR__ . '/..' . '/rospdf/pdf-php/src/Cpdf.php', '2d15964294879de66053d54f6bde65d7' => __DIR__ . '/..' . '/rospdf/pdf-php/src/Cezpdf.php', 如何从此自动加载文件中删除

autoload_static.php中的Composer使用类,我不需要在每个应用程序请求中使用它们

'd5fa61a7f6cbc1df09dd4df84549a2dc' => __DIR__ . '/..' . '/rospdf/pdf-php/src/Cpdf.php',
'2d15964294879de66053d54f6bde65d7' => __DIR__ . '/..' . '/rospdf/pdf-php/src/Cezpdf.php',
如何从此自动加载文件中删除它们?我可以手动删除/注释它们,但每个编写器更新此文件时都会重新生成

我尝试添加我的main composer.json: “从类映射中排除”:[“vendor/rospdf/pdf php/src/”]
&运行composer dump autoload bo这些类仍然在那里。

您可以欺骗composer的自动加载程序,让他认为这些类已经加载:

<?php

// Setting global variable:
$GLOBALS["__composer_autoload_files"] = [
    "d5fa61a7f6cbc1df09dd4df84549a2dc" => true,
    "2d15964294879de66053d54f6bde65d7" => true,
];

require "vendor/autoload.php";

为什么需要这样做?这里几乎没有开销。来自autoload_static.php(public static$files=array())的所有类都包含在对我的应用程序的每个请求中,并占用一些脚本内存和执行时间。在代码中,重载Cpdf.php只在一个地方使用——很少使用。可能您能得到的最好结果是分叉包并更改自动加载设置。或者使用带有
package
类型的存储库覆盖它。