Не могу вывести элемент массива

fonbaron

Велосипедист
Добрый день. Помогите разобраться никак не пойму что не так делаю

есть массив
PHP:
$doc[1]='first';
$doc[2]='second';
$doc[3]='last';
в переменной number хранится нужный элемент массива и когда я хочу получить предыдущий почему то получается ошибка
PHP:
$number 
$doc[$number  - 1]
пишет ошибку Node no longer exists
пробывал так
PHP:
$number 
$doc[intval($number  - 1)]
и так
PHP:
$number 
$doc[strval($number  - 1)]
не помогает.
Подскажите как правильно сделать
 

Фанат

oncle terrible
Команда форума
про элемент массива такую ошибку не напишет
зачем тебе предыдущий?
 

fonbaron

Велосипедист
1 Но ведь пишет если ставлю так $doc[2] то выводит все верно, а если $number=3 $doc[$number-1] ошибка.
2 так надо. при выводе элемента показывать еще предыдущий
 
Последнее редактирование:

Фанат

oncle terrible
Команда форума
Обычно слова "так надо" означают "я что-то тут нафантазировал, сам не знаю зачем, но по-другому не получается"
 

fonbaron

Велосипедист
Хорошо будь по Вашему вот вся задача
Есть запрос который возвращает данные c вложенной структурой из всего этого нужно построить xml
PHP:
array(
[0]=>array('id'=>1, 'level'=>1, 'title'=>'first')
[1]=>array('id'=>2, 'level'=>2, 'title'=>'second')
[2]=>array('id'=>3, 'level'=>1, 'title'=>'last')
)
нужно составить xml
PHP:
array(
<document title='first' id='1'>
    <document title='second' id='2'>
</dociment>
<document title='last' id='3'>
)
загружаю готовый xml с помощью simplexml и добавляю в цикле эти документы в блок documents (addChild('document')) но ни как не соображу как сделать эту вложенность вот и решил хранить в массиве левел и сам объект куда вставлять а по левелу определять если его левел больше предыдущего то вставляем в него если нет то в корень и тд.
 

Фанат

oncle terrible
Команда форума
во-первых, ты путаешь ошибки.
РАДИ БОГА, научись разделять свою программу на отдельные операторы.
И понимать, к какому из них относится сообщение об ошибке.
ЭЛЕМЕНТ массива с индексом $doc[$number-1] у тебя прекрасно СУЩЕСТВУЕТ.
А вот какие там у тебя проблемы с simplexml - это уже СОВСЕМ другой вопрос.
 

fonbaron

Велосипедист
Не пониаю если я задаю $doc[2] то выводит все верно, а если $number=3 $doc[$number-1] ошибка. В чем тогда разница?
 

Фанат

oncle terrible
Команда форума
перечитай мое предыдущее сообщение.
потом ещё раз
повторять пока не поймешь
 
Сверху