10

Java側には、認証を処理するサーブレットフィルターがあります。ページにカスタマイズされたコンテンツが必要な場合を除いて、ページに認証を追加するために他のすべてのサーブレットまたはJSPを変更する必要はありません。

PHPで同じことをどのように達成できますか?PHPではフレームワークを使用していません。

4

2 に答える 2

13

直接同等のものはありません。最善の策は、共通ファイルを上部に含め、必要に応じてその上部でそのようなロジックを実行することです。それで:

require 'common.php';

と:

if (!isset($_SESSION['userid'])) {
  // authentication stuff
}

最後に何かをしたい場合は、いくつかのオプションがあります。

  1. ob_start();で出力バッファハンドラを使用します。また
  2. シャットダウンコールバックをに登録しますregister_shutdown_function()

それで:

ob_start('my_callback');

function my_callback($str) {
  // do something
  return $str;
}

また

register_shutdown_function(my_callback);

function my_callback() {
  // do something
}
于 2009-10-02T00:24:00.367 に答える
1

私があなたの質問を正しく理解している場合。これはアーキテクチャによって異なります。たとえば、ログインページに送信されない場合は、セッションを介してユーザーが認証されているかどうかを確認するインクルードファイルを作成します。2つ以上のスクリプトがあるサイトは、ある種のインクルードファイルを利用し、このコードをそのファイルに入れることができると思います。有効なユーザーセッションが必要なページの名前を含む配列を作成し、それをリクエストURIと一致させることもできます。それを実行するいくつかの方法..uはuに最も適したものを選択する必要があります。

于 2009-10-02T00:23:43.657 に答える