php模組化供前端ajax調用的實現 ajax php post jquery ajax php ajax分

來源:互聯網
上載者:User
背景:沒有使用php架構
由於臨時需求,需要ajax調用php中的方法,簡單的寫了一個php檔案,檔案定義了兩個方法,如何用ajax分別調用同一個php檔案不同的方法。
以下是abc.php檔案,我定義的兩個方法a方法和b方法

classabc    {functiona(){echo something;        }        functionb($args){echo something;            }        }    }?>

以下是Controller.php,這個檔案是調用其他具體的功能類的控制器,起到樞紐作用,主要是通過反射來實現

if (!empty($_REQUEST['action'])) {          try {                $action = explode('/', $_REQUEST['action']);                $class_name = $action[0];                $method_name = $action[1];                require$class_name . '.php';                $class = new ReflectionClass($class_name);                if (class_exists($class_name)) {                      if ($class->hasMethod($method_name)) {                            $func = $class->getmethod($method_name);                            $instance = $class->newInstance();                            $func->invokeArgs($instance, array($_REQUEST));                                              }                }          }         catch (Exception$exc) {                echo$exc->getTraceAsString();          }    }?>

使用ajax調用時,使用如下寫法實現只調用abc.php中的a方法:

$.ajax({         type:"POST",         url: 'Controller.php?action=abc/a',             dataType: 'json',         success: function(data) {         }      });

如果需要傳參數,可以這麼寫來調用:

$.ajax({         type:"POST",         url: 'Controller.php',            data:{            action=abc/b,            參數1: 123,            參數2: 456}         dataType: 'json',         success: function(data) {         }      });

').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('
  • ').text(i)); }; $numbering.fadeIn(1700); }); });

    以上就介紹了php模組化供前端ajax調用的實現,包括了ajax,php方面的內容,希望對PHP教程有興趣的朋友有所協助。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.