在PHP中将对象转换为整数

时间:2009-02-24 19:19:41

标签: php types

  • $ total_results = 10
  • 的值 根据gettype(),对象中的
  • $ total_results
  • 我不能在$ total_results上使用数学运算符,因为它不是数字
  • 尝试$ total_results = intval($ total_results)转换为整数,但没有运气
  • 我得到的通知是:Zend_Gdata_Extension_OpenSearchTotalResults类的对象无法转换为int

如何转换为整数?

5 个答案:

答案 0 :(得分:8)

这有用吗?

$val = intval($total_results->getText());

答案 1 :(得分:6)

$results_numeric = (int) $total_results;

或者这个:

$results_numeric = $total_results->count();

答案 2 :(得分:1)

也许对象有一个构建方法来将它作为一个整数?

否则尝试这种非常hacky的方法(依赖__toString()返回10)

$total_results = $total_results->__toString();
$total_results = intval($total_results);

但是如果对象有非魔法方法的构建,你应该使用它!

答案 3 :(得分:1)

您可以看到班级here的方法。然后你可以自己尝试不同的方法。例如,有一个getText()方法。

答案 4 :(得分:1)

class toValue {
    function __toString()
    {
        return '3'; // you must return a string
    }
}

$a = new toValue;

var_dump("$a" + 2);

结果: INT(5)