如何在PHP中的单词或符号后获取数字?

时间:2015-07-08 09:08:46

标签: php function numbers

我想用PHP抓取一个文本就像一个例子,有一个数据"苹果= 10"我想从看起来完全相同的数据中获取仅数字。我的意思是,数字的位置是等于'等等。

我的问题是来自源的数字可以是2或3个字符,或者另一个字是不稳定的。

请帮我解决一下:)

3 个答案:

答案 0 :(得分:1)

$string = "Apple=10 | Orange=3 | Banana=7";
$elements = explode("|", $string);
$values = array();
foreach($elements as $element)
{
    $element = trim($element);
    $val_array = explode("=", $element);
    $values[$val_array[0]] = $val_array[1];
}

var_dump($values);

输出:

array(3) { 
    ["Apple"]=> string(2) "10" 
    ["Orange"]=> string(1) "3" 
    ["Banana"]=> string(1) "7" 
}

希望你需要它:)

答案 1 :(得分:0)

嗯,php对int转换有点懒惰,因此12345blablabla可以转换为12345

$value = intval(substr($str, strpos($str, '=') + 1));

当然,这不是最干净的方式,但很简单。如果你想要更清洁的东西,你可以使用正则表达式:

preg_match ('#=([0-9]+)#', $str, $matches);
$value = intval($matches[1]) ;

答案 2 :(得分:0)

请尝试以下代码:

$givenString= "The apple=10";    
$required_string = substr($givenString, strpos($givenString, "=") + 1);    
echo "output = ".$required_string ; // output = 10

使用strpos()函数,您可以查找字符串中第一次出现的子字符串的位置substr()函数,返回字符串的一部分。