PHP での動的プロパティの作成は非推奨になりました: 警告
P粉797855790
P粉797855790 2023-10-20 10:40:49
1
5
1006

この問題が頻繁に発生するようになりましたが、この警告を止めるには何をすればよいかわかりません:

非推奨: 動的プロパティを作成しています...非推奨

これは私のクラスです:

リーリー

これがインスタンス化の方法です。

リーリー

これにより、2 つのメッセージが表示されます:

非推奨: 動的プロパティの作成データベース::$database 廃止予定

非推奨: 動的プロパティ データベース::$server の作成 廃止予定


P粉797855790
P粉797855790

全員に返信(4)
P粉299174094

この警告は、設定しようとしているプロパティが クラスの先頭にリストされていないことを示します。

このコマンドを実行すると:

リーリー

は、これとほぼ同等です:

リーリー

警告は、クラス定義に

$db->database または $db->server が存在することを示す行が存在しないことです。

現在、これらは型なしのパブリック プロパティとして

動的に作成されますが、将来的には明示的に宣言する必要があります。 リーリー まれに、実際に「このクラスのプロパティは、実行時に追加することを決定したプロパティである」と言いたい場合があります。その場合は、

#[AllowDynamicProperties]

以下に示すように、属性を使用できます。 : リーリー

いいねを押す +0
  • 返事 ああ、マスター
    徐涛 著者 2023-10-26 17:53:30
徐涛

山東省浜州市***給与が非常に高いので、***は

いいねを押す +0
P粉098979048

したがって、警告は動的クラス属性を追加するコンストラクターから発生します。フィールドを動的かつ本格的に渡す必要がない場合、単純なものを複雑にしすぎているように見えるので、次のようなことを試してください。

リーリー

動的パラメータが必要な理由はありますか?次のこともできます:

リーリー

事前にパラメータを追加した場合、それらは動的ではなく、すでに存在するものに値を割り当てるだけです。

これで警告なしで動作するはずです。

リーリー
いいねを押す +1
徐涛

アファンVSワークセル宣伝部ファーストワイプVB

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート