如何从存储在方法/函数中的字符串值中取整数?

时间:2016-05-13 19:21:15

标签: php regex wordpress wordpress-plugin buddypress

在使用此代码打印的buddypress插件主题

<?php bp_the_thread_subject(); ?>

在我的结尾这个函数/方法是打印结果,如Hello world:1236。我想从这里只取整数值。但是当我对这个函数/方法应用任何东西时,它得到零结果。怎么做?

3 个答案:

答案 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)

Ideone Demo

答案 2 :(得分:0)

您可以使用preg_match仅返回号码:

<?php preg_match('/\d+/', bp_the_thread_subject(), $matches)[1] ?>