2012-07-18 86 views
1

我有一个简单的问题,我目前正在处理php/ajax请求。动态调用PHP函数。

// ajax_requests.php 

<?php 
if(isset($_POST['ajaxvar'] == 'send')){ 
    // send timestamp 
} 
if(isset($_POST['ajaxvar'] == 'get')){ 
    // return get 
} 
?> 

有没有更好的方法来应对这些要求?除了这种处理请求的有点臃肿的方式。

+0

哪里是你的'jQuery'代码?你有什么尝试? – thecodeparadox 2012-07-18 16:05:17

+1

你可以有不同的请求页面。我倾向于保持我的页面和Ajax功能达到1:1的比例。 – 2012-07-18 16:05:44

+0

你可能有功能,并使用'call_user_func()' – 2012-07-18 16:06:34

回答

1

如果您在发布后的值命名功能“ajaxvars”,那么你可以这样运行了他们:

if (isset($_POST['ajaxvars'])) $_POST['ajaxvars'](); 

function send(){ 
    // send timestamp 
} 

function get(){ 
    // return get 
} 

所以,如果你有$ _ POST [“ajaxvars”] ==“发送”,该脚本将运行send()函数。获取相同。

这也是一个好主意,先检查是否张贴的功能存在,所以:

if (function_exists($_POST['ajaxvars'])) $_POST['ajaxvars']();