ホームページ  >  記事  >  バックエンド開発  >  データの異常 - thinkphp プロジェクトで奇妙な問題が発生しました。レコードを挿入するとデータが変更されます。

データの異常 - thinkphp プロジェクトで奇妙な問題が発生しました。レコードを挿入するとデータが変更されます。

WBOY
WBOYオリジナル
2016-11-30 23:59:561131ブラウズ

thinkphp データ例外 phpbug

データの異常 - thinkphp プロジェクトで奇妙な問題が発生しました。レコードを挿入するとデータが変更されます。 図に示すように、最初の 2 つの print_r の後ろに exit ステートメントがある場合、print_r によって出力されるデータは正常です。ただし、レコードを挿入する文(赤枠の文)の後にexitを入れると、出力されるものの一部がnullになってしまいます。
明らかに、上記の $_GET とデータは、insert ステートメントの実行時に変更されました。ただし、印刷は挿入ステートメントの前に行われます。
下の図は、exit ステートメントが insert ステートメントの後に配置された後の print_r の出力です
データの異常 - thinkphp プロジェクトで奇妙な問題が発生しました。レコードを挿入するとデータが変更されます。
以下は、exit ステートメントが挿入レコードの前に配置された後の print_r の出力です
データの異常 - thinkphp プロジェクトで奇妙な問題が発生しました。レコードを挿入するとデータが変更されます。

この問題は私を長年悩ませてきました。長い間、それを解決する方法がわかりません。同じ問題を理解している人、または同じ問題に遭遇した人が回答をくれたり、一緒に議論したりできることを願っています。

返信内容:

exit は現在のスクリプトをすでに終了させて​​いるのではないですか? どうすれば追加できるでしょうか?

D("") メソッドを使用する場合は、対応するモデルが add() メソッドを書き換えてフィールド フィルタリングまたは権限チェックを追加したかどうかを確認するか、D() を M() に変更してみてください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。