1
lshang 2019-02-11 09:51:03 +08:00
这条 URL 应该是路由到你的 PHP 脚本上的吧,接收到请求的时候,判断下 HTTP Method 是否为 GET,如果是 GET 就获取参数。
判断是否为 GET 可以用 ```php if ($_SERVER['REQUEST_METHOD'] == 'GET') { } ``` 获取参数,可以直接取 $_GET 的值。 |
2
qiayue 2019-02-11 10:04:39 +08:00
php 本身就是被动接收的,有请求就会把你的代码执行一次
除非你的 php 做成了服务,即使是服务,也会有消息时给你事件通知 |
3
Sapp 2019-02-11 10:07:50 +08:00
没看懂你的需求,这不就是个简单的请求处理么?一般是代理转发到你的 php 上,php 进行处理吧? 这个时候你就判断一下是 get 还是 post 不就行了么?如果是框架,应该有直接的处理吧
|
5
hylsay OP @Sapp $order_id = $_GET["order_id"]; 是通过这种方式接收参数的吗?为什么获取不到数据呢?
|
6
yytsjq 2019-02-11 11:13:21 +08:00
print_r($_GET) 这样?
|
7
MonoLogueChi 2019-02-11 11:13:44 +08:00 via Android
get 请求就是和你正常打开一个网页是一样的,获取 get 请求参数,就是下载你打开的网页,只不过程序获得的是网页源码,你看到的是已经渲染过的网页
|
8
runnerlee 2019-02-11 11:15:36 +08:00
开了 nginx 的 access log 看一下? 看看实际过来的 method 跟 uri 是怎样的. 如果的确是 GET 并且带有 query string, 那可能就要看下 nginx 里的 pathinfo 配置了.
|
9
hylsay OP 现在只知道服务器会向这个 url(例如: http://www.xxx.com)发送一次 get 请求,如何通过 php 接收 get 参数?求老师们给个例子。我使用$order_id = $_GET["order_id"]; 获取不到数据
|
10
qiayue 2019-02-11 11:29:12 +08:00
你自己开发测试时,需要自己加参数
例如 domain.com/order?order_id=123 然后你的程序里就能够通过 $_GET['order_id'] 来获取 $order_id = isset($_GET['order_id'])?$_GET['order_id']:0; 其实简单来说,就是你服务器怎么访问,你自己测试当然也要同样访问啊 |
11
qiayue 2019-02-11 11:30:03 +08:00
服务器向你的 url 发了一次请求,后来你自己再打开,又是一个新的请求,当然获取不到上一次服务器请求的数据啊
|
12
zhengwenk 2019-02-11 11:44:15 +08:00
你的 order_id 是 23 么
|
13
zarte 2019-02-11 11:55:16 +08:00
@hylsay
php 的 get 参数是?开头后面的用& baidu.com?id=1&name=333 这样 你的那个 baidu.com/1/333 是要配置 nginx 或者 apache 实现的要不然就会去找 1 文件夹和 333 文件 |
14
PERFECTCN 2019-02-11 11:58:36 +08:00
|
15
qilishasha 2019-02-11 14:48:46 +08:00
可以通过$_SERVER['REQUEST_URI']来对 URL 进行解析,很多人使用这个方法放自己捣鼓的框架里来做一种叫“路由”的东西。。。。。。。。。
|
16
zxq2233 2019-02-11 15:17:27 +08:00
php 基础
|
17
jasperjia 2019-02-12 08:48:42 +08:00 via Android
理解一下反向代理为什么叫反向代理而不是正向代理
|