PHP bir acemi ve ben XML manipülasyon hakkında hiçbir şey bilmiyoruz. Ben aşağıda gösterilen bir Google CSE şerhi XML üzerinde çalışıyorum:
<?xml version="1.0" encoding="UTF-8" ?>
- <Annotations>
- <Annotation about="http://sanspace.in/">
<Label name="_cse_byxamvbyjpc" />
</Annotation>
- <Annotation about="http://blog.sanspace.in/">
<Label name="_cse_byxamvbyjpc" />
</Annotation>
- <Annotation about="http://google.com/">
<Label name="_cse_exclude_byxamvbyjpc" />
</Annotation>
</Annotations>
Ben yukarıda gösterilen dosyasından bu başarmak istiyorum:
<?xml version="1.0" encoding="UTF-8" ?>
- <Annotations>
- <Annotation about="http://sanspace.in/">
<Label name="testString1" />
</Annotation>
- <Annotation about="http://blog.sanspace.in/">
<Label name="testString2" />
</Annotation>
- <Annotation about="http://google.com/">
<Label name="testString2" />
</Annotation>
</Annotations>
Şimdiye kadar, ben denedim:
<?php
if (file_exists('test.xml'))
{
$xml = simplexml_load_file('test.xml');
}
else
{
exit('Error.');
}
foreach($xml->Annotation as $annotation)
{
if ($annotation["about"]=="http://sanspace.in/")
{ $annotation->Label["name"]="testString1"; }
else
{ $annotation->Label["name"]="testString2"; } }
$dom = new DOMDocument('1.0');
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$dom->loadXML($xml->asXML());
echo $dom->saveXML();
$dom->save("test.xml");
?>
Bu kod görevi gerçekleştiren ancak dosyasına kaydetmek değildir. Giriş, çıkış aşağıdaki linklerden ulaşılabilir:
My xml: http://www.sanspace.in/tools/searchit/test.xml My php: http://www.sanspace.in/tools/searchit/test.php (contains the above code)
My question is, what's wrong with the $dom->save("test.xml");
statement?
How do I save the XML file on the server?