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

How to grab number after a word or symbol in PHP?

我想抓取带有 PHP 的文本,例如,有一个数据 "The apple=10",我想抓取 仅数字 从看起来完全一样的数据。我的意思是,数字的位置应该在 'equals'.

之后

我的问题是来自源的数字可以是 2 或 3 个字符,或者换句话说,它是不稳定的。

请帮我解决一下:)

嗯,php有点懒惰int转换,所以12345blablabla可以转换成12345:

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

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

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

试试下面的代码:

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

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

$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" 
}

希望这就是您所需要的:)