2014-01-08 6 views
0

Я совершенно новый с PHP, и я пытаюсь что-то прочитать в API. На данный момент я используюPHP, file_get_contents, for loop, str_replace

$homepage = file_get_contents('http://www.site.com'); 
echo $homepage 

Это возвращает то, что выглядит следующим образом:

Array 
(
    [0] => Array 
    (
     [name] => myname 
     [user_id] => 31232 
    ) 
    [1] => Array 
    (
     [name] => anothername 
     [user_id] => 23534 
    ) 
) 

Так вот что я хочу: Я только хочу, чтобы прочитать [имя] => х и оставим все остальное, поэтому я попробовал цикл for в str_replace, но все, что у меня было, было ошибкой.

Я надеюсь, что кто-то может помочь мне

Edit: Я просто увидел, что я мог бы установить это как текст JSON тоже возвращает что-то вроде

[{"name":"myname","user_id":"31232"},{"name":"anothername","user_id":"23534"}] 

Edit2: Спасибо Tuga, что был именно тем, что я искал :) Я не могу выдвинуть свою кандидатуру, так как моя репутационная способность ниже 15, есть ли другой способ показать ваш ответ?

+0

показать нам этот последний код, что вы имеете в виду с прочитанным? –

+0

api возвращает исходный php-массив, а не xml или/?? –

+0

Итак, вы говорите, что содержимое URL-адреса является PHP var_dump? В противном случае просто запуск 'echo $ homepage' не создавал бы такой формат дампа переменной. Вы ничего не показываете? Если вы работаете с каким-то API, то вы сможете получить данные в каком-то структурированном формате (XML, JSON или в каком-то другом сериализованном формате). В этот момент вы просто возьмете структурированные данные и будете работать с ним на PHP, вместо того, чтобы пытаться анализировать значения из него как строки. –

ответ

0

$array = json_decode($homepage); возвращает массив, то вы можете цикл в массив, содержащий объекты и использовать «имя» атрибута:

foreach ($array as $obj) echo $obj->name;