Как я могу разобрать следующий массив? - PullRequest
0 голосов
/ 27 ноября 2009

У меня есть этот массив, который получает последнюю таблицу из базы данных. Однако индекс содержит объект, а не просто строку.

Мне нужно реализовать некоторые манипуляции со строками снизу, чтобы получить только таблицу деталей15

Array
(
    [0] => stdClass Object
    (
        [table_name] => table15
        [create_time] => 2009-11-24 13:10:04
    )

)

Есть предложения?

EDIT:

Я использую ExtJ, и я немного запутался. Этот массив генерируется из следующего кода PDO:

$sql  = "SELECT table_name, create_time FROM information_schema.TABLES WHERE table_schema = 'database_name' ORDER BY CREATE_TIME desc LIMIT 1";

$ostmt = $this->odb->query($sql);

return $ostmt->fetchAll(PDO::FETCH_OBJ);

Возвращает массив, напечатанный выше. Я не знаю имя массива, так как он генерируется так ...

Есть еще идеи?

Большое спасибо.

Ответы [ 3 ]

8 голосов
/ 27 ноября 2009

используйте оператор ->.

$array[0]->table_name; //returns table15

См. этот вопрос о том, что такое stdClass

4 голосов
/ 27 ноября 2009

это не должно работать?

$str = $array[0]->table_name;

Обновлен: Как вы упомянули, он возвращается из функции, поэтому я предполагаю, что вы где-то делаете print_r (); все, что вы помещаете в print_r, является вашим массивом.

0 голосов
/ 27 ноября 2009

Хорошо, я сохранил код

$ ostmt-> fetchAll (PDO :: FETCH_OBJ) в переменную массива, и я дал ей имя. Тогда я смог манипулировать этим.

Спасибо за помощь:)

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