Php 警告:第234行遇到非数值

Php 警告:第234行遇到非数值,php,Php,使用PHP7.2,我会遇到以下错误: PHP警告:在第234行中遇到非数值 下面是第234行的样子: $options['cpuLimit'] + 1, # hard limit 与代码的其余部分一起: if ( php_uname( 's' ) == 'Linux' ) { // Limit memory and CPU $cmd = wfEscapeShellArg( 'exec', # proc_open() passes $cmd to 'sh -c'

使用PHP7.2,我会遇到以下错误:

PHP警告:在第234行中遇到非数值

下面是第234行的样子:

$options['cpuLimit'] + 1, # hard limit
与代码的其余部分一起:

if ( php_uname( 's' ) == 'Linux' ) {
    // Limit memory and CPU
    $cmd = wfEscapeShellArg(
        'exec', # proc_open() passes $cmd to 'sh -c' on Linux, so add an 'exec' to bypass it
        '/bin/sh',
        __DIR__ . '/lua_ulimit.sh',
        $options['cpuLimit'], # soft limit (SIGXCPU)
        $options['cpuLimit'] + 1, # hard limit
        intval( $options['memoryLimit'] / 1024 ),
        $cmd );
}
有人知道如何修复错误吗?

您可以使用intval()从值中获取一个整数:

intval($options['cpuLimit']) + 1;
在使用intval之前,您可能首先要检查该值是否为数字。您可以使用is_numeric()实现这一点


来源:

你确定
$options['cpuLimit']
实际上是一个数字吗?实际上演员阵容会对抗症状,而不是原因。如果选项是由其他代码提供的,那么如果非数字选项出现错误,则没有问题。如果您遵循合同设计,即(:
if (is_numeric($options['cpuLimit']) == true) {
    intval($options['cpuLimit']) + 1;
}