【问题标题】:PHP Notice: Uninitialized string offsetPHP 注意:未初始化的字符串偏移量
【发布时间】:2018-12-29 13:48:59
【问题描述】:

我的代码中有错误提示 PHP 注意:未初始化的字符串偏移量:第 9 行 14

这是第 9 行:

while($url[$i]!='/' && $url[$i]!='?' && $i<$len)

如何避免这种情况?

如果您需要,这里是完整的代码:

 function remove_extra_in_url($url)
{
    $extra=array('https://','http://','www.',' ');
    $url=strtolower($url);
    $url=str_replace($extra,'',$url);
    $i=0;
    $site_name='';
    $len=strlen($url);
    while($url[$i]!='/' && $url[$i]!='?' && $i<$len)
    {
        $site_name.=$url[$i];
        $i++;
    }
    return $site_name;
}

非常感谢!

【问题讨论】:

标签: php string offset


【解决方案1】:

在最后一个字符处,它会在检查是否有要测试的字符之前检查该字符。由于使用&amp;&amp;,一旦此条件为假,移动$i&lt;$len 将停止任何进一步的检查...

while($i<$len && $url[$i]!='/' && $url[$i]!='?')

【讨论】:

  • 谢谢 Nigel Ren,如果有帮助,我会试试这个并评价你的答案!
  • 你是否也可以解决这个问题我也收到错误:list($type,$rec,$gets,$ref)=explode(':',$data[0]);
  • 我到达那里未定义的偏移量:1,未定义的偏移量:2,未定义的偏移量:3 错误
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-11
  • 1970-01-01
  • 1970-01-01
  • 2018-11-21
相关资源
最近更新 更多