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

Base.phpを新規作成する必要があるかどうかについて。 。 。 。

thinkphp5 にはパブリック共通クラスはありませんか?また、デフォルトAPP配下にも共通クラス定義が存在します。モジュール配下に共通がない場合はAPP配下に継承されます。コントローラーモジュール配下にcommon.phpファイルを作成した後は、何もせずに直接継承することができます。参照。 。 。制御も簡単で、コードも削減されます。 。 。新しい拠点を作るのはちょっと不必要ですよね。先生に詳しく聞いてください! !

A.zlA.zl2571日前1096

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

  • ringa_lee

    ringa_lee2017-09-11 17:15:12

    それは間違いなく必要です。たとえば、ログインする場合は、base.php ファイルで確認する必要はありません。他のサブクラスのコントローラーでは、ログインしているかどうかに関係なく、パブリック共通クラスにログイン検証を記述する必要があり、各コントローラーで 1 回検証する必要があります。これではプロセス指向開発と何ら変わりはなく、オブジェクト指向開発の意味を体験することはできません。

    返事
    0
  • A.zl

    意味がわかりません。たとえば、バックエンドの場合、ログインしている場合とログインしていない場合の 2 つの状況しかありません。次に、次のように書くことができます(コードは以下のようになります) $リクエスト = リクエスト(); if($request->path()=='admin/user/login'){ if(セッション('admin.admin_id')){ $this -> error('すでにログインしています!','index/index'); } }それ以外{ if(!session('admin.admin_id')){ $this -> error('まだログインしていません!','user/login'); } } このように書いても問題ありません!また、各コントローラー クラスに use appadmincommonbase; を追加する必要もなくなります。結局のところ、パブリック クラスの意味は、thinkphp で実行されているため、新しい base.php を作成する必要があります。それは議論の余地があります。 。結局のところ、コードと呼び出しが増えれば増えるほど、より多くの問題が発生することになります。それが正しいかどうかはわかりません。 。 。 。

    A.zl · 2017-09-11 17:24:25
  • キャンセル返事