php use类找不到的解决办法:1、打开相应的PHP文件;2、将use语句插入每个文件;3、执行“class_alias('RedBean_Facade', 'R');”代码即可。
本教程操作环境:windows7系统、PHP8.1版、Dell G3电脑。
php use类找不到怎么办?
问题描述:
关于php:要求包含use语句的文件后找不到类
我正在尝试使用一个文件来建立与RedBeanPHP的数据库连接,该连接可以包含在其他任何地方。 例:
file1.php
<?php require_once '../vendor/autoload.php'; use RedBean_Facade as R; R::setup(); ?>
file2.php
<?php require_once 'file1.php'; R::debug(true); ?>
但是导航到file2.php会显示此错误:
Fatal error: Class 'R' not found in /file1.php on line 5
PHP中的名称空间use语句不会得到include d吗?
问题解决:
在PHP中,namespace和use声明仅在它们出现的物理文件中有效。这些声明不跨越require。 它们已经在编译时处理了。
如果a.php在其名称空间中使用别名,并且它包含在b.php中,则b.php将看不到a.php中定义的别名。
您必须将use语句插入每个文件。 这里是文档:
Importing rules are per file basis
但是,您可以使用class_alias解决此问题:
class_alias('RedBean_Facade', 'R');
推荐学习:《PHP视频教程》
以上是php use类找不到怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!