この記事では、エディターが ThinkPHP フレームワークで空のオペレーションと空のコントローラーを処理する方法を説明します。いわゆる空のオペレーションと空のコントローラーとは、要するに、メソッドまたはコントローラーが ThinkPHP フレームワークに存在しないことを意味します。システムにエラーが報告されました。興味のあるお友達はぜひ一緒に探してみてください。
正しい URL (テスト環境): http://oa.com/index.php/admin/public/login 次のようにアクセスします:
1: オペレーション処理なし
メソッドがloginwに変更されると、次のようにエラーが報告されます:
システムには、デフォルトで次のようなエラー報告メカニズムが組み込まれています。 1. ユーザー エクスペリエンスの低下 2. 重大なセキュリティ リスク。
親クラス コントローラー ファイル Controller.class.php を確認し、次のコードを見つけます。
これは、呼び出されたメソッドがただし、_empty()メソッドが定義されている場合は、_empty()が実行されるか、呼び出されたメソッドと同名のテンプレートファイルが表示されます。すべての未知のメソッドに対してテンプレートを作成することは不可能なので、ここでは _empty() メソッドを使用して空の操作を処理します。コントローラー Public で _empty() メソッドを次のように定義します。
実行結果:
を渡すことができます。ページをより美しくするために _empty() メソッドにテンプレート ファイルを導入していますが、これは単なるテストです。ただし、コントローラーがたくさんある場合、コントローラーごとに _empty() を定義するのは合理的ではありませんが、このときは、親クラスの Controller.class.php で定義し、サブクラスで次のように使用できます。
##ただし、通常、親クラスのController.class.phpのコードは変更されず、子クラスと親クラスの間に追加できます。コントローラーが実装されています (詳細については次の記事を参照してください)。
#2. 空のコントローラーの処理
コントローラー名を Publicu に変更すると、エラーは次のようになります:
App.class.php を表示すると、次のコードが見つかります: これで、別の EmptyController.class.php コントローラーを作成できますアクセスされたコントローラーが存在しない場合にこのコントローラーにアクセスするための _empty() メソッドを組み込みます。 次のようにページに再度アクセスします: 関連チュートリアル:PHP ビデオ チュートリアル
以上がThinkPHP フレームワークで null 操作と null コントローラーを処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。