[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обработка одной функцией различных структур XML
pilyukhin
Доброго времени суток,
Подскажите, пожалуйста, не могу сообразить(лузер полный) - есть 3 варианта XML - файлов, которые надо обрабатывать.
Сделал функцию и не понимаю, как сделать цикл по файлу с разным уровнем вложенности.
Конечный объект имеют одинаковую структуру, но путь до него - разный.
Как это описать, чтобы можно было не писать под каждый файл новую функцию?
AllesKlar
SimpleXML
http://www.php.net/manual/ru/book.simplexml.php

_____________
[продано копирайтерам]
pilyukhin
Цитата (AllesKlar @ 15.02.2014 - 01:16)
SimpleXML
http://www.php.net/manual/ru/book.simplexml.php

Ответ ради поста?!
sergeiss
Цитата (pilyukhin @ 15.02.2014 - 01:32)
Ответ ради поста?!

Если ты не заметил, то тебе дали ссылку на то, как работать с XML. Чтобы ты не просто "сделал функцию", которая всё равно не работает (судя по твоим же словам), а понимал, что и как можно сделать.
Используй то, что по ссылке, проходи по всем путям, ищи, что тебе надо, анализируй данные...

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
pilyukhin
Цитата (sergeiss @ 15.02.2014 - 01:52)
Цитата (pilyukhin @ 15.02.2014 - 01:32)
Ответ ради поста?!

Если ты не заметил, то тебе дали ссылку на то, как работать с XML. Чтобы ты не просто "сделал функцию", которая всё равно не работает (судя по твоим же словам), а понимал, что и как можно сделать.
Используй то, что по ссылке, проходи по всем путям, ищи, что тебе надо, анализируй данные...

Спасибо - отлично знаю данную ссылку.
И Я не спрашивал про то, как работать с XML, а все-навсего спросил как создавать правильный цикл.
Функция нормально работает, спасибо.
sergeiss
Цитата (pilyukhin @ 15.02.2014 - 02:59)
а все-навсего спросил как создавать правильный цикл.

Цитата (pilyukhin @ 15.02.2014 - 00:45)
Сделал функцию и не понимаю, как сделать цикл по файлу с разным уровнем вложенности.

Ну так покажи, что именно ты сделал smile.gif Спецы подскажут что-нибудь, вполне возможно.

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
pilyukhin
Цитата (sergeiss @ 15.02.2014 - 03:41)
Цитата (pilyukhin @ 15.02.2014 - 02:59)
а все-навсего спросил как создавать правильный цикл.

Цитата (pilyukhin @ 15.02.2014 - 00:45)
Сделал функцию и не понимаю, как сделать цикл по файлу с разным уровнем вложенности.

Ну так покажи, что именно ты сделал smile.gif Спецы подскажут что-нибудь, вполне возможно.

Задача была логическая.
Решил проблему на уменьшение функции до уровня обработки элемента.
А соответствующий вызов - по условиям структуры XML.
linker
pilyukhin
Если я правильно понял, то тебе нужна рекурсия.

_____________
Gear Framework
Gear Framework на Github
pilyukhin
Цитата (linker @ 15.02.2014 - 10:53)
pilyukhin
Если я правильно понял, то тебе нужна рекурсия.

Не совсем - мне надо чтобы, в зависимости от входящего значания, цикл перебирал массив либо по маске(или как это назвать точно - не знаю):
$XML->partner->documents->invoices
либо по:
$XML->invoices
либо по:
$XML->documents->invoices
sergeiss
Цитата (pilyukhin @ 15.02.2014 - 04:01)
Задача была логическая.

Чтобы решить логическую задачу, нужно узнать ее условия. В данном случае, например, тебе никто ничего не предложил по одной простой причине: ты изначально не показал структуру файла. "Гадать на кофейной" гуще можно, вот только зачем? Потому и не ответили.

Есть одна мудрая мысль, гласящая, что правильно заданный вопрос - это уже половина ответа smile.gif

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
pilyukhin
Цитата (sergeiss @ 15.02.2014 - 11:44)
Цитата (pilyukhin @ 15.02.2014 - 04:01)
Задача была логическая.

Чтобы решить логическую задачу, нужно узнать ее условия. В данном случае, например, тебе никто ничего не предложил по одной простой причине: ты изначально не показал структуру файла. "Гадать на кофейной" гуще можно, вот только зачем? Потому и не ответили.

Есть одна мудрая мысль, гласящая, что правильно заданный вопрос - это уже половина ответа smile.gif

Еще раз повторюсь. Мне не нужна работа с XML - мне надо только как возможно задать разные условия(если это вообще возможно) для цикла.
linker
pilyukhin
Без условия не обойдёшься, плюс функция, которой будет передаваться нужный узел для обработки.

_____________
Gear Framework
Gear Framework на Github
Быстрый ответ:

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