PHP更改自动加载的顺序

Posted 半山

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP更改自动加载的顺序相关的知识,希望对你有一定的参考价值。

composer的锅

自从phper们用上了composer后,对于传统的加载方式倒是不会用了,可谓是“收之东隅,失之桑榆”。
下面说一下怎么改变加载顺序来覆写Laravel中的helper函数。

1. 直接require

打开Laravel的入口文件 index.php,可以看到require __DIR__.‘/../vendor/autoload.php‘;,比如我们覆写today函数
可以app目录下增加一个helper.php,然后覆写,


<?php
use CarbonCarbon;

function today()
{
return Carbon::today("PRC")->toDateTimeString();
}

改为字符串,新建一个路由,测试一下,发现如愿返回了字符串。

2. 使用composer-include-files

先安装composer require funkjedi/composer-include-files
然后编辑composer.json,在extra项里添加include_files


{
"extra": {
"include_files": [
    "app/helpers.php"
    ]
},
}

注意在此之前,得先把helper.php放到自动加载项里

"autoload": {
    "files": [
        "app/helpers.php"
    ]
}

运行composer dump,可以看到在vendor/composer/autoload_files.php里,我们的helper.php被放到了最前面

以上是关于PHP更改自动加载的顺序的主要内容,如果未能解决你的问题,请参考以下文章

避免Android在方向更改时自动重新添加我的片段

php 在Yoast SEO中更改或删除OpenGraph输出的代码片段。此代码中有多个代码段。

Android 在 FragmentPagerAdapter 中更改片段顺序

如何在 Vs Code 中更改默认自动选择的用户片段行为

超级有用的9个PHP代码片段

更改片段时显示 ProgressBar - Android