如何通过JavaScript调用PHP函数?我试图将PHP函数从外部PHP文件调用到JavaScript脚本中。我的代码是不同的和大的,所以我在这里写一个示例代码。这是我的PHP代码:<?phpfunction add($a,$b){
$c=$a+$b;
return $c;}function mult($a,$b){
$c=$a*$b;
return $c;}function divide($a,$b){
$c=$a/$b;
return $c;}?>这是我的JavaScript代码:<script>
var phpadd= add(1,2); //call the php add function
var phpmult= mult(1,2); //call the php mult function
var phpdivide= divide(1,2); //call the php divide function</script>所以这就是我想做的。我的原版PHP文件不包括这些数学函数,但思想是相同的。如果有些人对此没有正确的解决办法,那么请请建议另一种方法,但它应该从外部PHP调用值。
3 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
jQuery.ajax({
type: "POST",
url: 'your_functions_address.php',
dataType: 'json',
data: {functionname: 'add', arguments: [1, 2]},
success: function (obj, textstatus) {
if( !('error' in obj) ) {
yourVariable = obj.result;
}
else {
console.log(obj.error);
}
}}); <?php
header('Content-Type: application/json');
$aResult = array();
if( !isset($_POST['functionname']) ) { $aResult['error'] = 'No function name!'; }
if( !isset($_POST['arguments']) ) { $aResult['error'] = 'No function arguments!'; }
if( !isset($aResult['error']) ) {
switch($_POST['functionname']) {
case 'add':
if( !is_array($_POST['arguments']) || (count($_POST['arguments']) < 2) ) {
$aResult['error'] = 'Error in arguments!';
}
else {
$aResult['result'] = add(floatval($_POST['arguments'][0]), floatval($_POST['arguments'][1]));
}
break;
default:
$aResult['error'] = 'Not found function '.$_POST['functionname'].'!';
break;
}
}
echo json_encode($aResult);?>
喵喔喔
TA贡献1735条经验 获得超5个赞
<script> var phpadd= <?php echo add(1,2);?> //call the php add function var phpmult= <?php echo mult(1,2);?> //call the php mult function var phpdivide= <?php echo divide(1,2);?> //call the php divide function</script>
添加回答
举报
0/150
提交
取消
