PHP:Url作为参数

时间:2016-07-29 15:02:05

标签: php rest crud

我正在构建一个小的restful api,我问是否可以将url分隔到php文件和url的结尾。

E.g。 www.mydomain.com/api/parameter/1/2/

在这种情况下,php文件的格式为www.mydomain.com/api/www.mydomain.com/api/index.phpparameter/1/2/是参数。

我想要一个CRUD接口,以便没有参数的GET获取所有数据的列表。为此,我需要检查是否附加了参数并提取参数。

其他例子

www.mydomain.com/topics/ =>获取所有主题

www.mydomain.com/topics/1/posts/ =>获取主题1的所有帖子,

www.mydomain.com/topics/1/posts/2/ =>获得主题1的第2篇

我的问题是:它是否可能以及如何?

1 个答案:

答案 0 :(得分:1)

您可能必须使用$_SERVER['request_uri']从网址末尾读取请求URI。这将返回/api/parameter/1/2。然后,如果长度可靠,则可以对其进行子串,或者使用带有preg_match的正则表达式来获取参数部分。 e.g。

preg_match("parameter\/.*", $_SERVER['request_uri'], $matches)

会返回$ matches变量中的字符串parameter/1/2,如果找不到匹配则返回false

但是,就像其他人说的那样,如果可以的话,你可能更好地使用GET参数,并且只需使用isset()进行检查以查看是否有任何参数。