以PHP中字符串变量的尾部是否有整数部分为例

以PHP中字符串变量的尾部是否有整数部分为例,php,string,integer,string-conversion,Php,String,Integer,String Conversion,如何在PHP中将字符串变量的整数部分(最后一个整数)提取为另一个整数变量 以下是我的代码的当前状态: <?php $path = current_path(); // eg. loading 'node/43562' to $path $pos = strpos($path, 'node/'); if($pos>-1)die(print $pos); // sometimes $pos can be 0, may be 5 or even 26..like so ... ?&

如何在PHP中将字符串变量的整数部分(最后一个整数)提取为另一个整数变量

以下是我的代码的当前状态:

<?php
 $path = current_path(); // eg. loading 'node/43562' to $path
 $pos = strpos($path, 'node/');
 if($pos>-1)die(print $pos); // sometimes $pos can be 0, may be 5 or even 26..like so
 ...
?>
我必须在许多地方使用这个43562。 希望它可以用任何简单的
preg\uu
方法或复杂的正则表达式实现


等待最小LOC解决方案。

您可以通过多种方式获得号码

$string = "foo/bar/node/1234";

if(preg_match('/node\/([0-9]+)$/', $string, $match)) {

        echo $match[1];
}
下面是一个简单的正则表达式:

preg_match('/\d+$/', $path, $match);
var_dump($match);
如果检查前缀是否也存在很重要,则:

preg_match('/(?<=node\/)\d+$/', $path, $match);
var_dump($match);
也可以把绳子切碎。它有点快,不脏,但很管用:

$parts = explode('/', $path);
echo array_pop($parts);

你是说
$match[1]
,对吗?
$slash = strrpos($path, '/');
if ($slash !== false) {
    echo substr($path, $slash + 1);
}
$parts = explode('/', $path);
echo array_pop($parts);