PHP警告:遇到非数字值

时间:2020-09-15 作者:Luis Llanos

我得到这个警告:在/home/customer/www/example中遇到一个非数字值。com/public\\u html/wp-content/themes/boombox/includes/functions。php在线2466

我尝试将其从更改为=>$manual\\u amount+$用户\\u投票;至$manual\\u amount+=$用户\\u投票;(它抛出相同的警告)和$manual\\u金额$user\\u投票;(它连接数字,而不是添加数字)

 /**
 * Return post point count
 *
 * @param $post_id
 *
 * @return int
 */
function boombox_get_post_point_count($post_id)
{
    $points_count = 0;
    /*if ( boombox_module_management_service()->is_module_active( \'prs\' ) ) {
        $points_count = Boombox_Point_Count_Helper::get_post_points( $post_id );
    }*/
    $manual_amount = get_post_meta($post_id, "manual_vote_amount", true);
    $user_votes = get_post_meta($post_id, "add_vote_amount", true);
    $points_count = $manual_amount + $user_votes;
    return $points_count;
}
我很感激你的帮助

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

Post meta值在数据库中存储为字符串,因此只能返回字符串。如果要在数学运算中使用这些值,必须cast the value to a numeric type, 这意味着在变量或函数调用前面的括号中写入所需的类型。

一般示例:

$number = (int) get_post_meta($post_id, "key_identifier", true);
然后可以将变量与+ 签名

相关推荐

Functions are causing errors

我在插件的PHP上声明一个函数。插件在每个帖子的顶部加载代码(帖子布局是插件的名称)。无法在/home/content/08/10290908/html/wp-content/plugins/post-layout/plugin.php(181):eval()\'d code:4)中重新声明vote\\u-up()(之前在/home/content/08/102908/html/wp-content/plugins/post-layout/plugin.php中声明)。php(181):第36行的eval