在我的代码中,$ return返回一个数据数组。我试图提取该数组中的[2]值。由于某种原因,它只返回整个数组而不是我想要提取的值。我觉得这很简单,我只是忽略了一些东西。
这是我的代码:
$url = 'https://sandbox.familysearch.org/platform/tree/persons/KWWM-5R1/portrait?access_token=' . $_SESSION['fs-session'];
$return = print_r(get_headers($url));
echo $return[2];
这是打印出的数组的剪辑:
Array ( [0] => HTTP/1.1 307 Temporary Redirect [1] => Server: Apache-Coyote/1.1 [2] => Location: https://integration.familysearch.org/sandbox/v2/TH-501-48051-27-34/thumb200.jpg?ctx=ArtCtxPublic )
如何获得[2]值?
答案 0 :(得分:1)
尝试摆脱print_r
:
$return = get_headers($url);
echo $return[2];
print_r
是一个用于打印变量信息的函数(对于数组,其内容)。您将$return
设置为等于print_r
(仅为true
)的返回值,而不是您想要的标头数组。
答案 1 :(得分:0)
像这样:
$url = 'https://sandbox.familysearch.org/platform/tree/persons/KWWM-5R1/portrait?access_token=' . $_SESSION['fs-session'];
$return = get_headers($url);
echo $return[2];
答案 2 :(得分:0)
$return = print_r(get_headers($url));
应为$return =get_headers($url);
您在屏幕上看到的内容是print_r()
的结果。这不会返回要分配给$return
的数组,而只是将其打印在屏幕上。
从技术上讲,你的$return
没有任何价值,你的echo语句实际上并没有回应任何东西。