検索

ホームページ  >  に質問  >  本文

php - フック関数とトランザクションの違いは何ですか?

それらはすべて同じだと思いますか? フック関数が実行されないのは、予期せぬ事態が発生したためでしょうか?

过去多啦不再A梦过去多啦不再A梦2805日前577

全員に返信(1)返信します

  • 世界只因有你

    世界只因有你2017-05-16 13:01:49

    フック機能: ログインプロセス (アカウントパスワードの送信 -> アカウントパスワードの確認 -> アカウントがロックされているかどうかの確認 -> ログイン結果を返す) などの動作が発生するポイントとして簡単に理解できます。上記の 4 つの手順を実行します。 任意の時点でフックを設定し、拡張処理を実行します (たとえば、「アカウントとパスワードの検証」の時点でフック関数を実装し、送信されたアカウントとパスワードを「001/111」として取得します) 、送信されたデータは「user_001/pass_111」に変更され、プログラムが実際にデータベース内で比較する際には、アカウントのパスワード「user_001/pass_111」が比較されます。
    トランザクション: トランザクションプロセスなど、データベースレベルを指します。 Zhang San が Li Si に 100 を送金する場合、2 つのステップに分かれます: 1. Zhang San の口座から 100 を差し引く 2. Li Si の口座に 100 を追加します。次に、両方の操作が成功するか、両方とも正しいとみなされないことを確認する必要があり、これにはトランザクションが必要です。ビジネスとは、小さなステップの積み重ねを全体として大きなステップとして扱うものです。これらの小さなステップはすべて成功するか失敗するかのどちらかで、一部は成功し、一部は失敗します。
    トランザクションのプロセスは次のとおりです:
    1、トランザクションを開始します
    2、小さなステップ a、b、c、d...を実行します
    3、すべてが正常に実行された場合、トランザクションを送信します (データベースはすべてを永久に保存します)変更)
    4、小さなステップが失敗した場合は、トランザクションをロールバックします (データベースは行われたデータ変更を復元し、トランザクションが開始される前のデータの状態に戻ります)

    返事
    0
  • キャンセル返事