當前位置:首頁 » 編程語言 » phpxml數組

phpxml數組

發布時間: 2022-09-04 10:43:25

① 如何在php文件里寫xml

php文件里寫xml方法:

1、Xml代碼


<?php
$data_array=array(
array(
'title'=>'title1',
'content'=>'content1',
'pubdate'=>'2009-10-11',
),
array(
'title'=>'title2',
'content'=>'content2',
'pubdate'=>'2009-11-11',
)
);
//屬性數組
$attribute_array=array(
'title'=>array(
'size'=>1
)
);
$string=<<<XML
<?xmlversion='1.0'encoding='utf-8'?>
<article>
</article>
XML;
$xml=simplexml_load_string($string);
foreach($data_arrayas$data){
$item=$xml->addChild('item');
if(is_array($data)){
foreach($dataas$key=>$row){
$node=$item->addChild($key,$row);
if(isset($attribute_array[$key])&&is_array($attribute_array[$key]))
{
foreach($attribute_array[$key]as$akey=>$aval){
//設置屬性值
$node->addAttribute($akey,$aval);
}
}
}
}
}
echo$xml->asXML();
?>

② php xml解析成數組保存到資料庫

<?php
$kk = new DOMDocument();
$kk->load('class.xml');//xml文件名字,自己修改
$stu=$kk->getElementsByTagName('Item');
$result=array();
foreach($stu->childNodes as $childNode){

$result[$childNode->nodeName] = $child->nodeValue;
}
print_r($result);
?>

③ PHP XML轉數組問題,求幫忙;

看看這樣輸出什麼
if (file_exists('test.xml'))
{
$xml = simplexml_load_file('XML文件名');
var_mp($xml);
}
然後就是數組轉換了

④ php 如何獲取XML 並轉成2維數組

<?php
/**
* 功能:解析xml數據轉換成二維數組
*
* @param string $dataXml
* @return array
*/
public static function getXmlData ( $strXml ) {
$pos = strpos($strXml, 'xml');
if ($pos) {
$xmlCode =simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
$arrayCode=self::get_object_vars_final($xmlCode);
return $arrayCode ;
} else {
return '';
}
}
?>

⑤ 淘寶API返回xml如何解析成PHP數組

  1. DOMDocument模式。將xml文檔看成一個DOM模型通過對節點的操作來完成對xml文檔的CURD;
    步驟;1.首先是創建一個DOMDocument文檔對象,並讀取指定的xml文件
    $xmldoc=new DOMDocument();
    $xmldoc->load("text.xml");
    2.獲取xml的節點 與相關操作
    $roots=$xmldoc->getElementsByTagName("school")//獲取根節點shcool,獲取的根節點xmlnodelist列表形式,可指定獲取的指定的節點
    $root=$roots->item(0);//獲取節點列表中的第一個節點
    $root->nodeValue;//獲取標簽的文本內容;
    下面我我們以獲取所有的girl標簽的文本來為例;

  2. <?php
    $xmldoc=newDOMDocument();
    $xmldoc->load("text.xml");
    $classes=$xmldoc->getElementsByTagName("class");//獲取班級class節點
    //echo$classes->length;
    for($i=0;$i<$classes->length;$i++){
    $class=$classes->item($i);
    if($class->nodeValue){
    $stus=$class->getElementsByTagName("stu")->item(0);//獲取每一個班級下的stu標簽節點
    $girl=$stus->getElementsByTagName("girl")->item(0)->nodeValue;//獲取每一個節點girl的文本
    echo$girl."<br/>";

    }

    }

    ?>

<school>		<class班號="b001">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class班號="b002">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class班號="b003">
<stu>
<girl>28</girl>
<boy>22</boy>
</stu>
</class>
<class/>
</school>

3.對於xml文件的添加刪除和更新域javascript中的DOM操作一樣,只要創建相關的節點即可,並將相關的節點掛載到DOM樹上;


自己總結的,看下你就明白了

⑥ 新手求助高手解決 PHP數組轉換XML問題,研究好久都不行.

<?php
$team=array(
'id'=>'22955',
'video_order_id'=>'22955',
'is_audio'=>'0',
'status_format'=>'待審核',
'ftp_path'=>'2013/1374/5695/2479/137456952479.ssm/',
'lists'=>array(array('PreviewMTA'=>'A','PreviewMTB'=>'B')),
'lists1'=>array(array('PreviewMTA'=>'B'))
);

echosaveXML($team);
functionsaveXML($arr,$root='response'){
if(!preg_match('/[a-zA-Z][a-zA-Z0-9_]/',$root)){
$root='response';
}
$xml=newDOMDocument('1.0','UTF-8');
$xml->formatOutput=true;
$response=$xml->createElement($root);
$xml->appendChild($response);
foreach($arras$key=>$value){
if(is_array($value)){
$first=$xml->createElement($key);
_createElement($value,$first,$xml);
}else{
$first=$xml->createElement($key,$value);
}
$response->appendChild($first);
}
return$xml->saveXML();
//$xml->save('create_xml.xml');
}
function_createElement($arr,$parentDom,&$xml){
foreach($arras$value){
$list=$xml->createElement('list');
foreach($valueas$k=>$val){
if(is_array($val)){
$dom=$xml->createElement($k);
_createElement($val,$dom,$xml);
}else{
$dom=$xml->createElement($k,$val);
}
$list->appendChild($dom);
}
$parentDom->appendChild($list);
}
}
?>

可能和你要的結果有偏離

⑦ php如何通過xml傳遞數據

獲取request中body的字元串數據,比如一個數組轉成xml後,你用post方式給伺服器發送xml的字元串,伺服器就用file_get_contents('php://input') 去讀取xml格式 然後轉成數組即可

⑧ php 怎麼將數組轉xml的函數

沒有現成函數,只能自己寫;我有一個別人寫的函數:
<?php
class A2Xml {
private $version = '1.0';
private $encoding = 'UTF-8';
private $root = 'root';
private $xml = null;
function __construct() {
$this->xml = new XmlWriter();
}
function toXml($data, $eIsArray=FALSE) {
if(!$eIsArray) {
$this->xml->openMemory();
$this->xml->startDocument($this->version, $this->encoding);
$this->xml->startElement($this->root);
}
foreach($data as $key => $value){

if(is_array($value)){
$this->xml->startElement($key);
$this->toXml($value, TRUE);
$this->xml->endElement();
continue;
}
$this->xml->writeElement($key, $value);
}
if(!$eIsArray) {
$this->xml->endElement();
return $this->xml->outputMemory(true);
}
}
}
$res = array(
'hello' => '11212',
'world' => '232323',
'array' => array(
'test' => 'test',
'b' => array('c'=>'c', 'd'=>'d')
),
'a' => 'haha'
);
$xml = new A2Xml();
echo $xml->toXml($res);

⑨ php數組 如何判斷某個下標是否存在我把一個xml文件讀取成數組格式並用下標取值

isset ()
表示查看這個值是否被設置 如果有值返回true 如果沒有值沒有被設置那麼返回false

⑩ PHP 里如何實現數組轉 xml 並且格式化

simplexml_load_string可以把xml解析成對象,然後可以用var_mp進行解析。\r\nphp內部庫並沒有包含直接把xml解析成數組的模塊。\r\n而且xml本來包含節點概念,解析成對象以後可以直接訪問每一個節點,而數組相對就要難以理解的多。\r\n因此解析成數組並不比解析成對象有多少優勢。\r\n如果你對數組實在有需求的話,可以自己寫一個庫,並不會太難。

熱點內容
怎麼破解iphone5密碼 發布:2025-01-15 14:26:48 瀏覽:433
php數組列印 發布:2025-01-15 14:15:56 瀏覽:621
java流的關閉 發布:2025-01-15 14:15:55 瀏覽:754
東東農場自動腳本 發布:2025-01-15 14:10:05 瀏覽:390
apache禁止訪問文件 發布:2025-01-15 14:01:55 瀏覽:442
速騰哪個配置動力最好 發布:2025-01-15 13:56:44 瀏覽:902
編程做轉盤 發布:2025-01-15 13:56:04 瀏覽:194
安卓輔助腳本如何寫 發布:2025-01-15 13:42:50 瀏覽:127
壓縮褲的穿法 發布:2025-01-15 13:39:24 瀏覽:316
支付寶如何設支付密碼 發布:2025-01-15 13:39:24 瀏覽:258