我的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']).')';
}
答案 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']))).'%'
答案 2 :(得分:0)
我刚才使用完全相同的插件遇到了同样的问题。
? (100 - $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'
应该是
? (100 - (int) $args['gap'] - (int) str_replace('%', '', $args['image_width'])).'%'