Функция PHP -> Массив - PullRequest
       0

Функция PHP -> Массив

0 голосов
/ 07 марта 2011

У меня есть функция PHP, которая заполняет многомерный массив

$client->getResponse()

Я хочу использовать этот массив напрямую, примерно так:

echo '$client->getResponse()[0]'; что явно не работает.

Я не хочу этого делать

$arr = array($client->getResponse());, поскольку это приводит к другому уровню массива, который мне не нужен.

Ответы [ 4 ]

3 голосов
/ 07 марта 2011
$arr = $client->getResponse();
echo $arr[0];

должно быть достаточно.

Вы можете отобразить каждый элемент в массиве с помощью foreach

foreach($client->getResponse() as $clientResponse){
    echo $clientResponse;
}
1 голос
/ 07 марта 2011

А как насчет введения tmp?

$tmp = $client->getResponse();
echo $tmp[0];
0 голосов
/ 07 марта 2011

Не можете ли вы создать другой метод для класса, который представляет $ client?может быть, "GetResponseEntry ($ id)", например, так:

function getResponseEntry( $id, $default = null )
{
    static $response = null;

    if( $response === null )
        $response = $this->getResponse();

    if( isset($response[$id]) )
        return $response[$id];
    else
        return $default;
}

Тогда вы можете назвать это так:

echo $client->getResponseEntry(0);

Это может не подходить для всех обстоятельств, но ..Может быть, просто возможно, это сработает здесь.

0 голосов
/ 07 марта 2011

Внимание, если вы используете:

foreach($client->getResponse() ...)

Функция '' getResponse '' будет выполняться на каждой итерации ... Если данные изменяются во время "каждого" процесса, вы можете иметь несогласованные значения,Нет?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...