在自己的辅助编码器中未定义的偏移量


Undefined offset in own helper codeigniter

我想在数组值$stopwords前面连接字符"/'b",并在后面连接字符"'b/I "。

My helper

function addRegex_SW($arrayIn = array()){
    $arrayOut = array();
    $count = count($arrayIn);   
    for ($i = 1; $i <= $count; $i++)
    {
       $char1 = "/'b"; 
       $char2 = "'b/i";
       $arrayOut[$i] = $char1.$arrayIn[$i].$char2;
       //echo $arrayOut[$i];
    }
return $arrayOut;
}

我认为

$stopwords_Regex = addRegex_SW($stopwords);

然后当我运行代码

A PHP Error was encountered
Severity: Notice
Message: Undefined offset: 317
Filename: helpers/addRegex_helper.php
Line Number: 11

哪一行是

$arrayOut[$i] = $char1.$arrayIn[$i].$char2;

我肯定我谷歌过,但我还是不明白。由于

您的for -loop off-by-one

变化:for ($i = 1; $i <= $count; $i++)

To: for ($i = 0; $i < $count; $i++)

不需要使用for,而是使用foreach:

function addRegex_SW($arrayIn = array()) {
    $arrayOut = array();
    foreach ($arrayIn as $value) {
        $arrayOut[] = '/'b' . $value . ''b/i';
    }
    return $arrayOut;
}