摘取字符串

WBOY
풀어 주다: 2016-06-23 14:00:35
원래의
960명이 탐색했습니다.

请问 如何把字符串 
 100000007794605 1000000077946111
中的orderNo和orderResult标签的数据全部提取出来。分别放到两个数组中?


回复讨论(解决方案)

$str = "<?xml version='1.0' encoding='gb2312'?><orderNo>10000000779460</orderNo><orderResult>5</orderResult><orderNo>10000000779461</orderNo><orderResult>11</orderResult>";htm;preg_match_all("/<([^>]+)>([^<]+)<\/\\1>/U", $str, $matches);$out = array();foreach ($matches[1] as $key => $value) {	$out[$value][] = $matches[2][$key];}var_dump($out);
로그인 후 복사

不是标准的xml输出吧?
$s = " 100000007794605 1000000077946111 ";
$a = simplexml_load_string($s);
print_r($a);

比如 我要把所有10000000779460这样的标签的数据放到$array_order[] 数组
11标签的数据放到$arraresult[] 数组中

我是从配送公司获取的这个字符串。目的就是要把 这两个标签的数据存入两个数组中

//xml 文件操作$simXml = simplexml_load_file('xmlpath');//取出orderNo$orderNo = array();foreach ($simXml->orderNo as $order) {	$orderNo[] = (string)$order; //直接转换成字符串存放}//取出orderResult$orderResult = array();foreach ($simXml->orderResult as $res) {	$orderResult[] = (string)$res;//直接转换成字符串存放,也可以转换成其他的;}
로그인 후 복사


简单的xml 操作 不知道是不是你想要的

$s =<<< TXT<?xml version='1.0' encoding='gb2312'?> <orderNo>10000000779460</orderNo><orderResult>5</orderResult> <orderNo>10000000779461</orderNo><orderResult>11</orderResult>TXT;$d = array('orderNo' => 'array_order', 'orderResult' => 'arraresult');preg_match_all('#<(orderNo|orderResult)>(.+)</\1>#U', $s, $r);foreach($r[1] as $i=>$k) ${$d[$k]}[] = $r[2][$i];print_r($array_order);print_r($arraresult);
로그인 후 복사
Array(    [0] => 10000000779460    [1] => 10000000779461)Array(    [0] => 5    [1] => 11)
로그인 후 복사

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!