我正在将 MySQL 集成到我的 PHP 项目中,但遇到了错误。在我的一个类的构造函数中,我传递参数并将它们设置为变量。但是,我的 $dbc 变量似乎被视为字符串,因此出现以下错误:
Catchable fatal error: Object of class mysqli could not be converted to string in C:\Users\Exporting\PhpstormProjects\GameDB\games\price.php on line 21
我已经围绕这个主题进行了广泛的谷歌搜索,与我遇到的相同问题的任何内容都来自于开发人员犯下的愚蠢错误,例如在回显中调用该方法或类似的事情。我还尝试过 settype() 方法。我的代码如下:
class price_check {
private $dbc;
private $name;
function __construct($dbc, $name) {
settype($dbc, "object"); // Just for testing to see if it'd work
$this->$dbc = $dbc; // Line 21
$this->$name = $name;
}
}
如何创建该类的新实例:
<head>
<?php
require_once("db/mysql_connect.php");
require_once("content/price_check.php");
echo "<script> alert('" . gettype($dbc) . "')</script>"; // Returns object, for testing purposes
$price_check = new crash_session($dbc, "TODO");
?>
</head>
任何帮助将不胜感激,谢谢。
最佳答案
$this->$dbc
应该是 $this->dbc
(->
之后没有 $
)。
类似地,$this->$name
应该是 $this->name
。
关于php - 类(变量)的对象在赋值期间无法转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44742637/