Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
Есть к примеру структура из дивов и таблиц, вложенных в друг друга, какой самый простой способ, добраться до нужной информации в них? Код: html 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. На выходе должно получиться следущее: IMG: 22377 NAME: 0123456789 CONTENT: Text text tetx texе text text text text Щас мне приходиться в несколько этапов это делать, но мне кажется можно в один заход получать нужные данные из данной структуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2014, 20:10 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
xpath ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 00:06 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
ScareCrowxpath Да, вроде подходит! Только вот не очень пока умею составлять "маски" для выборки элементов из DOM и тд. Делаю значит выборку , все работает нормально, но как мне получить атрибуты выбираемых элементов? Ну к примеру я по маске выбираю все дивы с id начинающимся на myDiv $tableRows = $xpath->query("//div[starts-with(@id,'myDiv')]"); но у них ещё идёт продолжение id="myDiv- 234568 " Как мне узнавать id атрибуты целиком, то есть 234568 ? Мало примеров в интернете по этой теме... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 17:53 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
авторReturns an array of SimpleXMLElement objects or FALSE in case of an error. foreach( $tableRows as $obj ) { echo $obj->getAttribute('id'); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 18:16 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
GororScareCrowxpath Да, вроде подходит! Только вот не очень пока умею составлять "маски" для выборки элементов из DOM и тд. Мало примеров в интернете по этой теме... мало, братцы, мало.. гуглёж фразы xpath examples выдаёт About 1,910,000 results ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 19:34 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
ScareCrowавторReturns an array of SimpleXMLElement objects or FALSE in case of an error. foreach( $tableRows as $obj ) { echo $obj->getAttribute('id'); } Спасибо! Работает! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 21:01 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
А как можно сразу в одном цикле и к вложенным элементам обращаться? Ну к примеру, я обращаюсь к id="item-345679", мне выдаёт содержимое данного дива, то есть: Content text, а как мне ещё вложенные в искомый узел, элементы DOM задействовать: <img>, <a>? По второму кругу что-ли цикл запускать? Или с ними отдельно работать? Код: html 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 23:30 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
volodin661 мало, братцы, мало.. гуглёж фразы xpath examples выдаёт About 1,910,000 results Если честно, то я почти никогда дальше 2 страницы гугла не переходил, 1-2 обычно на них есть ответ, если его там нет, то значит нет) Дальше идёт "мусор" не по теме, очень мало точных вхождений и тд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.04.2014, 23:38 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
Gororvolodin661мало, братцы, мало.. гуглёж фразы xpath examples выдаёт About 1,910,000 results Если честно, то я почти никогда дальше 2 страницы гугла не переходил, 1-2 обычно на них есть ответ, если его там нет, то значит нет) Дальше идёт "мусор" не по теме, очень мало точных вхождений и тд. а я тоже дальше двух страниц не пойду, я даже дальше второй ссылки на первой странице не пойду, а зайду в неё ( XPath Syntax ) унутрь и увижу, что для того, чтобы выбрать ВСЕ атрибуты всех узлов с именем "id", надо написать xpath выражение Код: xml 1. , а чтобы только те, которые при тэге div: Код: xml 1. Predicates а если только те из атрибутов id, у которых в начале сочетание item , то Код: xml 1. см. Functions Reference ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 00:30 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
volodin661надо написать xpath выражение Код: xml 1. а чтобы только те, которые при тэге div: Код: xml 1. Predicates а если только те из атрибутов id, у которых в начале сочетание item , то Код: xml 1. см. Functions Reference Меня интересует, как добраться к примеру до: <img scr="x.jpg">, как получить "Content text" из дива c id="item-345679", я уже понял, но как работать с вложенными в него DOM элементами <img>, <a>? Не пропадать же им даром?) Я так понимаю они тоже присутствуют где-то в выборке, так как зажаты между тегами: <div id="item-345679"><a href="#"> Мне нужно это! </a></div> Как к ним сразу достучаться? Вот это я пока не понял. Код: html 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 00:58 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
Goror<div id="item-345679"><a href="#"> Мне нужно это! </a></div> Как к ним сразу достучаться? Вот это я пока не понял. Код: html 1. 2. 3. 4. 5. дорогой друг, для кого я приводил все эти ссылки, тратил время, портил ясные глаза ? а?!! ( можешь не отвечать, вопрос риторический ) Код: xml 1. даст значение тэга anchor c аттрибутом href внутри тэга div и это то, что тебе нужно! было сделать самому домашнее задание: разобрать что такое в xpath // - два слэша в начале, / - один слэш и без слэша. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 03:55 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
volodin661, я таки испортил ясные глаза - в предыдущем моём посте- вдруг откуда ни возьмись лишний слэш перед предикатом, правильно: Код: xml 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 04:03 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
автор<div id="item-345679"><a href="#">Мне нужно это!</a></div> http://www.php.net/manual/ru/class.domnode.php авторchildNodes Возвращает список DOMNodeList, содержащий всех потомков текущего узла. Если у узла нет потомков, возвращает пустой список DOMNodeList. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 13:36 |
|
||
|
[PHP] Ругулярки, preg_match_all
|
|||
|---|---|---|---|
|
#18+
volodin661, Что-то не выходит у меня в одном "заходе" собрать всё.. Либо "Text text text ...." получаю через Код: php 1. или же добавляю Код: php 1. А мне нужно в одном заходе и Text text text .... и атрибуты <img> получить, чтоб не делать два цикла один для Текста див второй для атрибутов img и в array_combine они не состыкуются и тд. Код: html 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2014, 14:34 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38617872&tid=1462868]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
56ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 335ms |

| 0 / 0 |
