我想通过PHP
中的一个函数检索用户信息。
角度代码:
$scope.users = $http({
method: 'GET',
url: 'functions.php/getUsers()'
}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}
其中getUsers()
是将json
数据返回到角度的函数。
还有其他方法可以使用PHP
文件中的角度函数吗?
答案 0 :(得分:1)
请记住
functions
不能等于我们的公共变量,在此示例中,您$scope.users
为function
,并且您再次等于response.data
(实际上你错过了function
)您无法从文件中读取内容,您必须使用向您返回
json
的api网址
$scope.users = $http({
method: 'GET',
url: 'functions.php/getUsers()'
}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}
更改为
$scope.getUsers = function(){
//for example api url for your users is "http://localhost:8080/users"
var api = "you api url";
$http({method: 'GET', url: api}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}
}
//request data
$scope.getUsers();
或直接使用它,无需功能
//for example api url for your users is "http://localhost:8080/users"
var api = "you api url";
$http({method: 'GET', url: api}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}
答案 1 :(得分:0)
您无法以这种方式在JavaScript文件中调用PHP函数。您可以按照以下步骤执行此操作:
1)创建get-users.php
文件
<?php
require 'functions.php';
echo getUsers();
?>
2)对创建的文件发出http请求
$scope.users = $http({
method: 'GET',
url: 'your-website-url/get-users.php'
}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}
<强>更新强>
如果你有很多功能,并且不想为每个功能创建一个文件。那么你可以这样做:
1)创建all-functions.php
文件
<?php
require 'functions.php';
if (function_exists($_GET['func'])) {
echo call_user_func($_GET['func']);
} else {
echo "Error: function does not exist";
}
?>
2)更新角度代码
$scope.users = $http({
method: 'GET',
url: 'your-website-url/all-functions.php',
data: {
func: 'getusers'
}
}).then(function(response){
$scope.users = response.data;
},function(reason){
$scope.error = reason.data;
});
}