在使用此代码打印的buddypress插件主题
<?php bp_the_thread_subject(); ?>
在我的结尾这个函数/方法是打印结果,如Hello world:1236。我想从这里只取整数值。但是当我对这个函数/方法应用任何东西时,它得到零结果。怎么做?
答案 0 :(得分:1)
您可以使用filter_var功能提取数字
<?php
function bp_the_thread_subject(){
//All your logic to return the string....
return 'Hello world: 1236';
}
$value = filter_var(bp_the_thread_subject(), FILTER_SANITIZE_NUMBER_INT);
echo $value // 1236;
?>
答案 1 :(得分:0)
假设bp_the_thread_subject()
返回Hello world: 1236
,何时可以filter_var
使用FILTER_SANITIZE_NUMBER_INT
删除所有不是int
的内容。
$identity = filter_var( bp_the_thread_subject(), FILTER_SANITIZE_NUMBER_INT );
$myInt = (int)$identity;
var_dump($myInt);
//int(1236)
答案 2 :(得分:0)
您可以使用preg_match
仅返回号码:
<?php preg_match('/\d+/', bp_the_thread_subject(), $matches)[1] ?>