<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Niushop開源商城鉤子開發 --- 下面以會員簽到插件(NsMemberSign)的原理通俗的說明鉤子的調用原理: * **鉤子的調用方式,實例 hook\(‘memberAction’, \['type' =&gt; 'NsMemberRegister', 'uid' =&gt; 12\]\);** * **查詢可實現memberAction的鉤子列表:** ``` ``` * ``` 通過查詢數據庫sys\_hook表中可執行的插件列表(實際存儲緩存) ![](https://img.kancloud.cn/f6/fa/f6fa0b70f18542dac17535cc009d2534_1091x78.png) 通過查看可執行memberAction的插件: NsMemberRegister,NsMemberPraise,NsMemberSign,NsMemberEvaluate,NsMemberShare ``` * **通過實例化對應插件的入口類,建立對象,同時執行對應的方法** ```php 例如:插件執行列表存在:NsMemberSign,首先創建對象: $class = new addons\NsMemberSign\NsMemberEvaluateAddon(); 其次調用鉤子方法(方法名=鉤子名 ,參數=對應傳入參數): $res = $class->memberAction(['type' => 'NsMemberRegister', 'uid' => 12]); ``` * **循環執行插件列表依次返回數據** 鉤子的安裝: * **鉤子是對應插件的入口文件中的public方法,在執行安裝插件時存入sys\_hook數據表,鉤子執行時查詢表進行調用。**
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看