找不到 laravel 10 中的自定义类

Custom class in laravel 10 not found

提问人:Cod3rMax 提问时间:8/15/2023 最后编辑:RiggsFollyCod3rMax 更新时间:8/15/2023 访问量:118

问:

我在 laravel 10 中创建了一个自定义类,位于:

App\Helpers\CompletedOrders

该类包含以下代码:

<?
namespace App\Helpers\CompletedOrders;

class DeliverOrdersByMail
{

    public static function DeliverOrdersToCustomerMail($OrderID)
    {
        return "mail ok ". $OrderID;
    }

}

当我尝试在文件上调用该类时:

use App\Helpers\CompletedOrders\DeliverOrdersByMail;

Route::get('test', function(){
    DeliverOrdersByMail::DeliverOrdersToCustomerMail("fgzefef");
});

我收到一个错误,说找不到该类!

找不到类“App\Helpers\CompletedOrders\DeliverOrdersByMail”

有什么解决方案吗?

PHP Laravel Symfony 命名空间 Laravel-10

评论

0赞 aynber 8/15/2023
尝试composer dumpautoload
0赞 Cod3rMax 8/15/2023
@aynber我仍然做了同样的问题

答:

0赞 John Lobo 8/15/2023 #1

PHP 被剥夺。所以你有用而不是short_open_tag(<?)<?php<?

在 PHP 7.4 中,short_open_tag 默认保持启用状态: 更改 如果人们依赖 默认值,而不是显式启用它们。相反:

  • 如果启用并<short_open_tag?,则发出单个弃用通知。
  • 如果启用了short_open_tag,但<?从不使用,则不会发出弃用通知(和以前一样)。
  • 如果short_open_tag被禁用,<?没有特殊含义,被解释为纯文本(如前所述)。

在 PHP 8.0 中,弃用通知被转换为解析错误:

  • 如果启用了 short_open_tag,则使用 <?是分析错误。
  • 如果short_open_tag被禁用,<?没有特殊含义(如前所述)。

在 PHP 9.0 中,对 short_open_tag 的支持被完全删除:

  • .<?从不具有特殊含义,它总是被解释为纯文本。

编号: https://wiki.php.net/rfc/deprecate_php_short_tags_v2

评论

0赞 Cod3rMax 8/16/2023
哇,我根本没有想到这样的事情会导致这个问题。谢谢你在尝试了 2 个小时后救了我,哈哈