|
|
|
|
|
для: Расшифровка
(23.10.2008 в 01:40)
| | Не пойму, как получить нумерованный доступ к узлам в списке:
$doc = new DOMDocument();
$doc->load('file.xml');
$dataset = $doc->getElementsByTagName( "msg" );
$count_msgs=$dataset->length;
|
Вот это не работает:
for ($i =$first_msg; $i>=$last_msg; $i--)
{
echo '<hr/>';
echo $dataset[$i]->getAttribute('author');
}
|
Хотя так работает:
foreach( $dataset as $row )
{
echo $row->getAttribute('author');
}
|
Но мне нужен именно нумерованный вывод. | |
|
|
|
|
|
|
|
для: Расшифровка
(23.10.2008 в 01:40)
| | ну вот есть живой пример:
<price date="2008-04-27 15:15">
<name>Site</name>
<region>Украина</region>
<url>http://site.com</url>
<currency code="USD" rate="5.1" main="1" />
<catalog>
<category id="13">Камеры</category>
<category id="14">Компьютеры</category>
<category id="12">Tel-TV-DVD</category>
<category id="4">Аудио</category>
...
</catalog>
<items>
<item id="4918">
<name>SENNHEISER HD 515 Gaming</name>
<url>http://site.com/audio/headphones/sennheiser/sennheiser_hd_515_gaming</url>
<price>133.00</price>
<categoryId>34</categoryId>
<image>http://site.com/files/15/HD_515_m.jpg</image>
</item>
<item id="4917">
<name>SENNHEISER HD 25-1 II</name>
<url>http://site.com/audio/headphones/sennheiser/sennheiser_25-1_ii</url>
<price>355.00</price>
<categoryId>34</categoryId>
<image>http://site.com/files/15/HD-25-1 II.jpg</image>
</item>
|
вот я и думаю как грамотнее сделать...
при чем на лету нужно менять ID категории этого файла на ID категории в БД, ну и закидывать в базу ...
скажите, чето подобное толковое никто не встречал? | |
|
|
|
|
|
|
|
для: Расшифровка
(22.10.2008 в 15:43)
| | без проблем редактируется все что угодно,
вместо
$dom = new DomDocument('1.0','iso-8859-15');
пишется $dom = new DomDocument();
еще методика
$dom = new DomDocument('1.0','iso-8859-15');
$ht_ml = $dom->appendChild($dom->createElement('html'));
$he_ad = $ht_ml->appendChild($dom->createElement('head'));
$tit_le= $he_ad->appendChild($dom->createElement('title'));
$tit_le->appendChild($dom->createTextNode('DOMAttr test'));
$me_ta = $he_ad->appendChild(new DOMElement('meta'));
$me_ta->setAttributeNode(new DOMAttr('name', 'Description'));
$me_ta->setAttributeNode(new DOMAttr('content', 'example'));
$me_ta = $he_ad->appendChild(new DOMElement('meta'));
$me_ta->setAttributeNode(new DOMAttr('name', 'Author'));
$me_ta->setAttributeNode(new DOMAttr('content', 'karvjorm'));
Result:
<?xml version="1.0" encoding="iso-8859-15"?>
<html>
<head>
<title>DOMAttr test</title>
<meta name="Description" content="example"/>
<meta name="Author" content="karvjorm"/>
</head>
|
| |
|
|
|
|
|
|
|
для: Расшифровка
(22.10.2008 в 15:43)
| | Так получается, но вопрос вот в чём: аши примеры выше по добавлению узла касаются добавления в НОВЫЙ документ? Интересует как-раз добавление узла в уже существующий документ, то есть его (документа) редактирование. | |
|
|
|
|
|
|
|
для: coloboc66
(22.10.2008 в 15:26)
| | а так
$doc = new DOMDocument();
$doc->load('file.xml');
echo $doc->saveXML();
|
| |
|
|
|
|
|
|
|
для: Расшифровка
(22.10.2008 в 13:04)
| | Фиг его знает - я даже не могу файл прочитать, у меня выдаётся ошибка с первой же строки кода:
Notice: Undefined variable: dom in z:\home\localhost\www\testdir\xml\dom_readxml.php5 on line 3
Fatal error: Call to a member function load() on a non-object in z:\home\localhost\www\testdir\xml\dom_readxml.php5 on line 3 | |
|
|
|
|
|
|
|
для: GeorgeIV
(22.10.2008 в 10:04)
| | ну эт в разрезе php форума)) | |
|
|
|
|
|
|
|
для: coloboc66
(22.10.2008 в 09:40)
| | ну я в кратце
можно и атрибуты
$doc = new DOMDocument("1.0");
$node = $doc->createElement("para");
$newnode = $doc->appendChild($node);
$newnode->setAttribute("align", "left");
|
а вообще мануал и примеры есть, там не плохо расписано
http://us.php.net/manual/en/book.dom.php | |
|
|
|
|
|
|
|
для: GeorgeIV
(22.10.2008 в 10:04)
| | Да правильно - выбросить надо. Я раньше всё делал в вин1251, а потом на сайте понадобились другие языки и возникла проблема - нужно теперь всё переделывать. Если бы изначально всё делал в УТФ-8, этой проблемы бы не возникло... | |
|
|
|
|
|
|
|
для: Расшифровка
(21.10.2008 в 01:00)
| | Развыбрасывался... В мире не только апач с пхп существуют... | |
|
|
|
|