解析或破坏数组中的简单文本

时间:2013-03-15 10:36:50

标签: php arrays parsing

我有一个简单的数组:

array(price => "1737 EUR - 3447 EUR")

我需要这样的结果:

  

$ price1 = 1737

     

$ price = 3447

我知道这是一个非常简单的问题,但我不知道选择哪种功能以及如何操作?

3 个答案:

答案 0 :(得分:4)

试试这个:

<?php
 $arr   = array("price" => "1737 EUR - 3447 EUR");
 preg_match('/(?P<price1>\d+)\s*EUR\s*-\s*(?P<price>\d+)\s*EUR/',$arr["price"],$matches);
 echo "<pre>";
 print_r($matches);
?>

答案 1 :(得分:0)

如果您不想使用正则表达式,请尝试此操作;

$priceArray=array(price => "1737 EUR - 3447 EUR");
$spiltPrices=explode(' - ',$priceArray['price']);
echo $price1=$spiltPrices[0];
echo $price=$spiltPrices[1];

答案 2 :(得分:0)

不太漂亮,但我会做这样的事情:

//the initial array
$price = array("price" => "1737 EUR - 3447 EUR");

$prices = explode("-",$price["price"]);
foreach($prices as &$price) $price = (int) $price;
print_r($prices); //Array ( [0] => 1737 [1] => 3447 )