无法从PHP中的数组URL收集值

时间:2016-02-10 09:49:36

标签: php

第三方将详细信息传递给URL。它使用URL作为url编码的HTTP查询参数获取对URL的请求。

以下是网址示例:     http://_______.com/customer_missed_call.php?CallSid=e9536ef16460727558c0db17349021b0&From=09513325525&To=08039511763&Direction=incoming&DialCallDuration=0&StartTime=2016-02-10+14%3A56%3A17&EndTime=0000-00-00+00%3A00%3A00&CallType=callattempt&DialWhomNumber=&Created=Wed%2C+10+Feb+2016+14%3A56%3A17&flow_id=67475&tenant_id=24683&CallFrom=09513325525&CallTo=8039511763&ForwardedFrom=&CurrentTime=2016-02-10+14%3A56%3A17

我想收集' CallSid'和'来自'来自这个网址。

我尝试了以下代码

<?php echo $_GET; ?>

<?php echo utf8_decode(urldecode($_GET)); ?>

$URL = $_SERVER['REQUEST_URI'];
  $parsedURL=parse_url($URL);
  $URLQ=$parsedURL['CallSid'];
  echo $parsedURL;

但没有获得上述代码中的任何一个的值。请尝试为上述问题提供有效的解决方案。提前谢谢。

3 个答案:

答案 0 :(得分:1)

网址

中缺少“?” - 分隔符

修改:请提供您调用网址的方式(请求代码)。

$_GET['CallSid'];应该正常做到这一点

答案 1 :(得分:1)

他们在?

之后缺少.php

应该是这样的:

http://_______.com/customer_missed_call.php?CallSid=e9536ef16460727558c0db17349021b0&From=09513325525&To=08039511763&Direction=incoming&DialCallDuration=0&StartTime=2016-02-10+14%3A56%3A17&EndTime=0000-00-00+00%3A00%3A00&CallType=callattempt&DialWhomNumber=&Created=Wed%2C+10+Feb+2016+14%3A56%3A17&flow_id=67475&tenant_id=24683&CallFrom=09513325525&CallTo=8039511763&ForwardedFrom=&CurrentTime=2016-02-10+14%3A56%3A17

答案 2 :(得分:0)

可能导致问题的一个问题是parse_url返回带有预定义键的数组。查询的关键是“查询”($parsedURL['query'];

然而,使用$ _GET方法更容易阅读,并且比获取查询字符串并手动解析它更容易。要访问其中的值,您还需要指定一个键,而不仅仅是调用数组本身。 e.g:

$callSID = $_GET['CallSid'];
$from = $_GET['From'];

希望有所帮助