【发布时间】:2018-11-12 02:46:26
【问题描述】:
早安@每个人,我正在尝试在返回“资源”类型的命名空间类上创建一个函数,但是我没有这样做。
我想做什么:#1
public function SQLQuery($query):resource
{
// the magic...
}
与以下语法一起使用:
$SQL = SQLQuery('SELECT * FROM my_db');
但结果是:
语法错误,意外 ':',期待 ';'或 '{' 因为我正在运行 PHP 5.6 并且该功能需要 PHP 7...
所以我尝试了另一种方法,但它也不适用于我:#2
public function SQLQuery($query, &$resrc)
{
$resrc = mysqli_query($SQLDB, $query);
// the magic...
}
SQLQuery('SELECT * FROM my_db', $resrc_var);
所以我尝试了另一种至少对我有用的方法:#3
public function SQLQuery($query)
{
$resrc = mysqli_query($SQLDB, $query);
// the magic...
return $resrc;
}
$SQL = SQLQuery('SELECT * FROM my_db');
【问题讨论】:
-
我没有收到您所说的返回错误。你确定这个错误是针对那个 sn-p 的吗?
-
我得到的错误是:
Uncaught TypeError: Return value of Test::SQLQuery() must be an instance of resource, none returned in /run_dir/repl.php(68) : eval()'d code:5 Stack trace: #0 /run_dir/repl.php(68) : eval()'d code(8): Test->SQLQuery('test') #1 /run_dir/repl.php(68): eval() #2 {main} thrown -
@Script47 是的,我确定(XAMPP 的 PHP 5.6)
-
请检查我的回答。
标签: php class types namespaces resources