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

thinkphp - php程序的插件机制原理一般是怎么实现的呢?如wordpress插件,DZ!插件等

php程序的插件机制原理一般是怎么实现的呢?如wordpress插件,DZ!插件等

thinkphp的系统钩子,标签位算插件吗,插件控制器又是怎么回事呢?

自己怎么开发插件呢,插件实现的原理都不懂,真心纠结,有知道的帮忙解惑,感激不尽!

怪我咯怪我咯2773日前729

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

  • ringa_lee

    ringa_lee2017-04-10 15:32:49

    给你写一段简单的代码你就懂了,

    php<?php
    $func = array();
    
     function do_action($name){
         global $func;
         if(isset($func[$name])){
             for($i=0; $i< count($func[$name]); $i++){
                 $func[$name][$i]();
             }
          }
     }
    
    function add_action($name, $call_name){
        global $func;
        $func[$name][] = $call_name; 
    }
    ?>
    

    然后通过do_action添加钩子,add_action实现插件函数调用

    返事
    0
  • 黄舟

    黄舟2017-04-10 15:32:49

    你可以了解下 注册设计模式 就是用这个实现的

    返事
    0
  • キャンセル返事