我有一個字符串腓獲得來自特定標籤值的字符串
$string= '<Label>1</Label><Value>1</Value><Label>2</Label><Value>2</Value><Label>3</Label><Value>3</Value><Label>4</Label><Value>4</Value><Label>5</Label><Value>5</Value>';
我需要的標籤和值標籤值分成兩個獨立的數組。我試着用下面的函數
function getTextBetweenTags($string, $tagname)
{
$pattern = "/<$tagname>(.*)<\/$tagname>/";
preg_match($pattern, $string, $matches, PREG_OFFSET_CAPTURE);
return $matches;
}
我創造了另一個功能,使其兩個不同的陣列
function formatChoices($choices)
{
$return['label'] = $this->getTextBetweenTags($choices, "Label");
$return['value'] = $this->getTextBetweenTags($choices, "Value");
return $return;
}
但它返回以下
Array([label] => Array(
[0] => 1</Label><Value>1</Value><Label>2</Label><Value>2</Value><Label>3</Label><Value>3</Value><Label>4</Label><Value>4</Value><Label>5
[1] => 7
)
[value] => Array
(
[0] => 1</Value><Label>2</Label><Value>2</Value><Label>3</Label><Value>3</Value><Label>4</Label><Value>4</Value><Label>5</Label><Value>5
[1] => 23))
請幫助。謝謝
爲此使用XML解析器。正則表達式是不爲作業 – 2012-01-06 11:25:21