しばらくの間、私の頭を壁に叩いていました。私は提案された質問のほとんどを読んだ。私はクラスのコンストラクタに私のmysqliの接続を渡し、クラス変数に設定しようとしていますし、取得しています:回復致命的なエラー:回復可能な致命的なエラー:クラスmysqliのオブジェクトを文字列に変換できませんでした
$con=mysqli_connect("abc", "abc", "abc", "abc");
if (mysqli_connect_errno()) {
echo "Failed to connect to MariaDB: " . mysqli_connect_error();
}
/* check connection */
if ($con->connect_errno) {
printf("Connect failed: %s\n", $con->connect_error);
exit();
}
$t = new Timer($con);
// lots of irrelevant code
unset($t);
class Timer {
private $time = null;
private $con;
public function __construct($con) {
$this->$con = $con;
$this->time = time();
echo 'Working - please wait..<br/>';
}
public function __destruct() {
$basename = basename($_SERVER['PHP_SELF']);
$query = "SELECT ScriptID FROM scripts WHERE `ScriptURL` = '$basename';";
$scriptIDResult = mysqli_fetch_assoc(mysqli_query($con, $query)) or die(mysqli_error($con));
$t->scriptID = $scriptIDResult['ScriptID'];
$elapsed = (time()-$this->time);
echo '<br/>Job finished in '.($elapsed).' seconds.';
$scriptQuery = "UPDATE `scriptruns` SET `ScriptExecutedTime` = '$elapsed', `ScriptRunDate` = NOW() WHERE `ScriptID` = '$scriptID'";
$result = mysqli_query($con, $scriptQuery) or die(mysqli_error($con));
}
}
:クラスmysqliののオブジェクトは、文字列
PHPに変換することができませんでしたエラーは、$this->$con = $con;
のコンストラクト関数でスローされています。
ハハ、とてもシンプルです、ありがとう! – dmikester1