我正在使用
创建一个新的stdClass。$usrobj=new stdClass();
它给了我这个错误
PHP Warning: require_once(objects/User/stdClass.php): failed to open stream: No such file or directory in...
似乎php将stdClass视为用户定义的类
$db=new mysqli();
答案 0 :(得分:2)
使用命名空间时会发生这种情况。例如:
<?php
namespace Foo\Bar;
$obj = new stdClass; // Fatal error: Uncaught Error: Class 'Foo\Bar\stdClass' not found
与自动加载器结合使用,该自动加载器在找不到该类时尝试从objects/User/
目录加载文件。
要使用任何全局类,您需要在类名前放置\
,以指定您要访问的是全局类,而不是当前名称空间中的类:
$usrobj=new \stdClass();
$db=new \mysqli();
答案 1 :(得分:0)
似乎是名称空间问题(与滥用PHP 5.3名称空间有关)。
$o= new \stdClass();
$o->a = 'new object';
可以与mysql对象一起使用的东西。