php如何判断一个字符串是不是纯数字,is_int不好使。

我通过$_REQUEST接受一个用户输入的值,我要判断这个值是不是纯数字(id)或者不是纯数字(名称),来组装不同的sql。

$project = isset($_REQUEST['project']) ? trim($_REQUEST['project']) : 0;  

我想实现的是这样的逻辑

$where = '';  
if (is_int($project)){  
    $where .= " and p.id = {$project}"  
} else{  
    $where .= " and p.name like '%{$project}%'";  
}  

但是如果我输入一个23会变成“23”,导致is_int不好用。
php有没有什么函数能够判断一个字符串是不是纯数字的?

function isInteger($input) {  
   return (is_numeric(strval($input)));  
}  

@saonian: 好用。多谢