[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Объяснитепоследовательность работы if
Страницы: 1, 2
Invis1ble
http://php.net/manual/ru/language.types.ob....object.casting
json_decode() возвращает объект встроенного класса stdClass либо null
так попробуй
if (($fotoname = json_decode($sqlrow['fotoname'])) !== null && count((array)$fotoname == 9)) {


_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Invis1ble
либо нужно передать в качестве второго аргумента true
if (($fotoname = json_decode($sqlrow['fotoname'], true)) !== null && is_array($fotoname)) {


_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Xes
Чето это из высшей матиматики пошло... я не понимаю. Написано одно по факту вижу другое
Цитата из ссылки
Цитата
Массивы преобразуются в object с именами полей, названными согласно ключам массива и соответствующими им значениям. При преобразовании любого другого значения, оно будет помещено в поле с именем scalar

ТОесть мая запись должна была преобразоваться в объект, а у меня ареобразуется в массив.
Так как когда я пытаюсь напечатать он пишет array а не object.
И обращатся тогда должен был бы к значениям объекта $fotoname->1
Invis1ble
Ты вообще игнорируешь мои примеры? Я показал в предыдущем посте как работать с массивом.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Xes
Цитата (Invis1ble @ 3.10.2011 - 10:41)
Ты вообще игнорируешь мои примеры? Я показал в предыдущем посте как работать с массивом.

Неправда )))

Я потыкаюсь понять.
json_decode
Цитата
When TRUE, returned objects will be converted into associative arrays.

Насколько я шарю в английском, если true возвращаемый объект будет конвертирован в ассоциативный массив.

Как тогда объяснить что без true, когда должен получится объект, код работает.

if($fotoname = json_decode($sqlrow['fotoname']){
if(is_array($fotoname) && count($fotoname) == 9){


Вот как я понимаю примерно, то что ты писал ни первый ни второй вариант не работает.

if($fotoname = json_decode($sqlrow['fotoname'], true) && is_array($fotoname)){
if(is_array($fotoname) && count($fotoname) == 9){


if($fotoname = json_decode($sqlrow['fotoname'], true) !== null && is_array($fotoname)){
if(is_array($fotoname) && count($fotoname) == 9){

Неизвестный $fotoname
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.