2017-08-31 87 views
1

我建立了一个非常简单的PHP API,它对HTTP请求进行了解答。它应该能够创建一个用户并删除一个。所以目前有两个PHP文件/类。一个用于删除,一个用于创建/插入用户。PHP/HTTP-API - 如何从extern调用不同的PHP文件?

我的问题:

如何,我需要打电话给他们(如何的URL的样子)?正如我在一些例子中所看到的,大多数人只能通过路径打电话给他们:

删除:http://example.org/deletehttp://example.org/delete.php

创建:http://exmple.org/createhttp://example.org/create.php

所以,我必须创建这些路径?我是否需要将所有文件重命名为index.php并将它们放到正确的路径中?

我需要知道,建立的实践是什么(我使用php风暴IDE)。

谢谢。

+0

为此使用路由器。 – Neodan

+0

当然 - 我的意思是,如果我在最后用.php调用它,我会得到一个错误 - 我会用java做出http请求。 – louis12356

回答

2

此不同的方法都可以...

网址在你的.htaccess重写

(如果没有这个文件,然后在你的根文件夹中创建它)并复制此在:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ index.php?page=$1 [L] 

然后调用http://example.org/create,它将被重新写为http://example.org/index.php?page=create

如果你想保持两个不同的页面(create.php和delete.php),所以喜欢这个:

RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.+)$ $1.php [L] 

因此,根据该第二变型http://example.org/create,将调用http://example.org/create.php而不是index.php页面=创建

子文件夹

我喜欢这个解决方案,因为它使你的API源代码结构。因此,在每一个这样的创建一些子文件夹与index.php文件:

/_include 
    -- config.php 
    -- other scripts to include... 
/create 
    -- index.php 
/delete 
    -- index.php 

因此,用户会打电话给http://example.org/createhttp://example.org/delete!你可以用两个index.php调用脚本来创建一个_include文件夹。

+0

好吧,有多个index.php有点混乱 - 但它似乎是合法的。谢谢 – louis12356

0

您需要将您的URL指向您的PHP文件或路径的位置。例如,如果您将其指向http://example.com/delete,则需要确保存在该路线。

只要存在URL指向http://example.com/delete.php就可以正常工作。

相关问题