2011-09-24 42 views

Trả lời

13

DOM sẽ làm điều đó tự động cho bạn

$dom = new DOMDocument; 
$dom->appendChild($dom->createElement('foo')); 
echo $dom->saveXml(); 

sẽ cung cấp theo mặc định

<?xml version="1.0"?> 
<foo/> 

trừ khi bạn làm

$dom = new DOMDocument; 
$dom->appendChild($dom->createElement('foo')); 
echo $dom->saveXml($dom, LIBXML_NOEMPTYTAG); 

mà sau đó sẽ cung cấp cho

<?xml version="1.0" encoding="UTF-8"?> 
<foo></foo> 
0

Chỉ cần vượt qua một param node để DOMDocument::saveXML để đầu ra chỉ một nút cụ thể, mà không cần bất kỳ khai báo XML:

$doc = new \DOMDocument('1.0', 'UTF-8'); 
$doc->preserveWhiteSpace = false; 
$doc->formatOutput = false; 
$node = $doc->createElement('foo'); 

// Trimming the default carriage return char from output 
echo trim($doc->saveXML($node)); 

sẽ cho

<foo/> 

không chứa bất kỳ char dòng mới/vận chuyển trở lại kết thúc.

Các vấn đề liên quan