帮我解决一个问题下
参考例子:
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<de>
</frame>
<frame>
<node>
<name>4</name>
<name>5</name>
<name>6</name>
<name>7</name>
<de>
</frame>
<frame>
<node>
<name>8</name>
<name>9</name>
<name>10</name>
<name>11</name>
<de>
</frame>
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<name>4</name>
<name>5</name>
<name>6</name>
<de>
</frame>
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<de>
</frame>
结果是要得到每一个<frame>中<name>值
结果类似:array(0=>{1,2,3},1=>{4,5,6,7},2=>{8,9,10,11},3=>{1,2,3,4,5,6},4=>{1,2,3})
参考例子:
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<de>
</frame>
<frame>
<node>
<name>4</name>
<name>5</name>
<name>6</name>
<name>7</name>
<de>
</frame>
<frame>
<node>
<name>8</name>
<name>9</name>
<name>10</name>
<name>11</name>
<de>
</frame>
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<name>4</name>
<name>5</name>
<name>6</name>
<de>
</frame>
<frame>
<node>
<name>1</name>
<name>2</name>
<name>3</name>
<de>
</frame>
结果是要得到每一个<frame>中<name>值
结果类似:array(0=>{1,2,3},1=>{4,5,6,7},2=>{8,9,10,11},3=>{1,2,3,4,5,6},4=>{1,2,3})
另外也可以用正则表达式来读写xml..就是麻烦点。
preg_match_all('/<frame>(.*)<\/frame>/isU',$con,$arr);foreach($arr[1] as $k=>$v){
preg_match_all('#<name>(.*)</name>#isU',$v,$ar[$k]);
$tem[]=$ar[$k][1];
}
print_r($tem); Array
(
[0] => Array
(
[0] => 1
[1] => 2
[2] => 3
) [1] => Array
(
[0] => 4
[1] => 5
[2] => 6
[3] => 7
) [2] => Array
(
[0] => 8
[1] => 9
[2] => 10
[3] => 11
) [3] => Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
) [4] => Array
(
[0] => 1
[1] => 2
[2] => 3
))