[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как удалить child в simpleXml ?
GRean
Всем привет!

Есть xml4.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<
store>
<
sku id="7705">
<
name>iPod classic</name>
<
price>330</price>
<
ean>0002520190555</ean>
</
sku>
<
sku id="1139">
<
name>ASUS A626</name>
<
price>310</price>
<
ean>0502770290391</ean>
</
sku>
<
sku id="783">
<
name>Sony iBook</name>
<
price>300</price>
<
ean>4506790441392</ean>
</
sku>
</
store>


и есть скрипт:



<?php
$xmlstr = file_get_contents('xml4.xml');
$store = new SimpleXMLElement($xmlstr);

$dom = new DOMDocument('1.0', 'UTF-8');
$dom_sxe = $dom->importNode($xmlstr);

foreach($store->sku as $sku)
{
echo "id= ".$sku['id'] .'<br />';
echo "name= ".$sku->name .'<br />';
echo "price= ".$sku->price .'<br />';
echo "ean= ".$sku->ean .'<br />';
}
echo"<br/>";
echo"----------------";
echo"<br/>";
//-----------------------------------------Удаление атрибута
//unset($store->sku[3]->name);
//----------------------------------------- Изменить атрибут
//$store->sku[3]->name = 'Big Cliff';
//$store->sku[3] = null;
//removeChild($store->sku[3]);
//-----------------------------------------Добавление Раздела
//$newSku = $store->addChild('sku');
//$newSku->addChild('name', 'Macbook Pro');
//$newSku->addChild('price', '2400');
//$newSku->addChild('ean', '1103610290850');


$store->asXML('xml4.xml');
//-----------------------------------------------------------

echo "name= ".$store->sku[3]->name;
echo"<br/>";


foreach($store->sku as $sku)
{
echo "id= ".$sku['id'] .'<br />';
echo "name= ".$sku->name .'<br />';
echo "price= ".$sku->price .'<br />';
echo "ean= ".$sku->ean .'<br />';
}
echo"<br/>";
echo"----------------";
echo"<br/>";




?>



Я могу изменять атрибуты, добавлять child, изменять, но как удалить child <sku id=""> ?



Спустя 11 минут, 4 секунды (8.08.2010 - 10:46) Lenarfate написал(а):
removeChild()

Спустя 7 минут, 45 секунд (8.08.2010 - 10:53) GRean написал(а):
Цитата (Lenarfate @ 8.08.2010 - 07:46)
removeChild()

Fatal error: Call to undefined function removeChild()

а как правильно прописать, что б эта функция была определена?

Спустя 5 минут, 7 секунд (8.08.2010 - 10:59) Lenarfate написал(а):
вот из мануала

$doc = new DOMDocument;
$doc->load('book.xml');

$book = $doc->documentElement;

// we retrieve the chapter and remove it from the book
$chapter = $book->getElementsByTagName('chapter')->item(0);
$oldchapter = $book->removeChild($chapter);

echo $doc->saveXML();

Спустя 4 минуты, 23 секунды (8.08.2010 - 11:03) GRean написал(а):
спасибо, а можно ссылку на мануал?

Спустя 9 минут, 6 секунд (8.08.2010 - 11:12) Lenarfate написал(а):

Спустя 11 минут, 17 секунд (8.08.2010 - 11:23) GRean написал(а):
полность скопировал xml и скрипт, не работает sad.gif

Спустя 10 минут, 36 секунд (8.08.2010 - 11:34) Lenarfate написал(а):
не надо ничего копировать. нужно самому думать. там пример, а реализовывать сам уже должен

Спустя 2 минуты, 37 секунд (8.08.2010 - 11:36) GRean написал(а):
да и так сижу мучаю.
PHP я не так уж хорошо знаю.
Помогите пожалуйста с примером, не получается у меня сделать удаление.
Быстрый ответ:

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