我正在尝试使用PHP
,REST
和Angular
。
我有一个userAPI.php
文件,其中包含多个函数:getUser($uid)
等。
我有一个DAO方法,它从指定的userObject
的数据库中返回userID
。
现在,在Java中,当我们使用JAX-RS时,我们可以使用注释指定URL模式,如下所示:
@url('user/{uid}')'
@get
public void getUser(Integer uid){
//func body
}
但我不确定如何在PHP中这样做。
然后我用Google搜索并了解.htaccess
。
我试过了:
RewriteRule user/(.*)$ php/service/userAPI.php?uid=$1 [QSA,NC,L]
但我不确定这是否正确。
我应该在.htaccess
和$http.get()
内写一下什么?
答案 0 :(得分:1)
PHP脚本不会自动调用任何函数。要测试您的重写规则是否生效,请执行以下操作:
<强> userAPI.php 强>
<?php
require_once "userMethods.php"
$uId = (isset($_GET["uid"]))?$_GET["uid"]:null);
if ($uId === null) {
echo "No user id provided";
}
$user = getUser($id);
<强> userMethods.php 强>
<?php
function getUser($id) {
//Get the user
}
// Other functions?
虽然可以在任何将运行的代码之前声明userAPI.php
文件中的所有函数,但将函数声明(和类声明)与可运行脚本分开可能是更好的做法。
但我建议您使用正确的PHP MVC框架。 Laravel是一个相当不错的版本,虽然它确实有一个学习曲线,所以如果你只需要在PHP中做一些简单的事情然后再从不编码,那么它可能不值得投入时间。
答案 1 :(得分:0)
你应该看看这个。这将为您处理所有路由,并且非常容易设置。一旦定义了路线,您就可以调用自己的功能。