警告:PHP代码中遇到的非数字值

时间:2018-09-01 12:29:58

标签: php wordpress

我的php代码有问题。 有谁知道如何解决这一问题?请帮帮我!

警告:在第24行的C:\ xampp \ htdocs \ reza \ wp-content \ plugins \ trx_addons \ shortcodes \ promo \ tpl.default.php中遇到的非数字值

这是第24行:

? (100 - $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'

整个代码:

$args = get_query_var('trx_addons_args_sc_promo');

$args['image'] = trx_addons_get_attachment_url($args['image'], 'full');
if (empty($args['image'])) {
    $args['image_width'] = '0%';
    $text_width = "100%";
} else if (empty($args['title']) && empty($args['subtitle']) && empty($args['description']) && empty($args['content']) && (empty($args['link']) || empty($args['link_text']))) {
    $args['image_width'] = '100%';
    $text_width = 0;
} else {
    $args['gap'] = trim(str_replace('%', '', $args['gap']));
    if (!empty($args['gap']) && strpos($args['image_width'], '%')!==false)
        $args['image_width'] = ((int) str_replace('%', '', $args['image_width']) - $args['gap']/2) . '%';
    $text_width = strpos($args['image_width'], '%')!==false
            ? (100 - $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'
            : 'calc(100%-'.($args['gap'] ? $args['gap'].'%' : '').trim($args['image_width']).')';
}

3 个答案:

答案 0 :(得分:0)

这是PHP 7.1(http://php.net/manual/en/migration71.other-changes.php)中的新型警告

$args['gap']$args['image_width']不是数字或未初始化(也不是数字:))。

答案 1 :(得分:0)

变量不是数字。使用:

? (100 - intval($args['gap']) - intval(str_replace('%', '', $args['image_width']))).'%' 

invtal(); PHP Documentation

答案 2 :(得分:0)

我刚才使用完全相同的插件遇到了同样的问题。

? (100 - $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'

应该是

? (100 - (int) $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'