0
0

More than 1 year has passed since last update.

falseからの配列自動生成が非推奨になっていたのでsqliteで困った

Posted at

お絵描き掲示板noReitaをつくっています、さこつです。

今回表題の件で困ったことが解決したので記事にしようと思います。

何が起きたのか

実はPHP8.1で起きてたらしいんですけど、(falseから配列の自動生成が非推奨になりました。)

自分はsqlでこういうことをしていました。

index.php
//最新コメント取得
$sqlw = "SELECT * FROM tlog WHERE thread=0 ORDER BY tid DESC LIMIT 1";
$msgw = $db->prepare($sqlw);
$msgw->execute();
$msgwc = $msgw->fetch();
index.php
$msgwc["tid"] = 0;
$msgwc["age"] = 0;
$msgwc["tree"] = 0;

するとここでエラーが出たんですね。

image1.png

falseがはいるsql文でやったこと

tidでfalseのエラーがでるらしい。自動生成が非推奨なら手動で生成すればいいや、ということでこうしました。

index.php
//$msgwc["tid"] = 0;
$msgwc["tid"] == false ? 0 : 0;

きもちわるい三項演算子です。ifでよかったかも。

厳密でないのは厳密でないfalseの可能性もあったからです。

結論

true/falseからの配列の自動生成は手動でやればいい。

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0