今日PHPプログラムをテストしていたら、「スカラー値を配列として使用できません」というエラーメッセージが表示されました。このエラーメッセージは数日前にも表示されましたが、その時は少し調整すれば大丈夫だったように思えました。 . 深くは言っていなかったのですが、今日また出てきました。
もうふざけられない、原因と解決策を見つけなければならないので、ネットで検索しても検索しても、長い間検索しても結果が見つからなかった。そのような問題が見つからないわけではありません。オンラインではありますが、正確に直接答えられる人はほとんどいません。この記事の最後の段落を読んで、何が起こっているのか突然理解できました。
——————————————-
注意が必要なのは型変換です:
変数名 (a など) が整数などの非配列型として定義されている場合この場合、 a は浮動小数点、文字列 (オブジェクト型でも) に変換できますが、配列には変換できません。つまり、a[0]=1; は間違っており、PHP は「スカラー値をスカラー値として使用できません」のような警告を発行します。配列"。 a を 1 次元配列として定義しても、高次元配列に変換することはできません。
——————————————-
以下は、他のネチズンが見つけた問題の解決策です:
この文を見た後、コードを注意深く確認したところ、Aの上で定義していることがわかりました以下ではブール型変数を配列として直接呼び出したため、エラーが発生しました。
配列以外の要素が定義されて値が割り当てられ、配列として使用されると、「スカラー値を配列として使用できません」エラーが発生します。例: var $i=1000; =345; // この時点でエラーが発生しますので、皆さんもこの変則的なコードの書き方はやめましょう。
上記は、executescalar PHP でスカラー値を配列として使用できない場合の解決策を、executescalar の内容も含めて紹介しています。PHP チュートリアルに興味のある友人の役に立てば幸いです。