2013-05-21 38 views
0

我想通过将PHP.net代码插入代码生成器来学习范围和xrange功能。当我运行下面的代码,我给出的错误:

unexpected '$i' (T_VARIABLE) on line 4

下面是代码:

function xrange($start, $limit, $step) { 
    if ($start < $limit) { 
     for ($i = $start; $i <= $limit; $i += $step) { 
      yield $i; 
     } 
    } else { 
     for ($i = $start; $i >= $limit; $i -= $step) { 
      yield $i; 
     } 
    } 
} 


foreach (range(1, 9, 2) as $number) { 
    echo "$number "; 
} 

谢谢advnace您的见解!

+4

确保你使用的是PHP 5.5。 – moonwave99

+0

该生成器与PHP 5一起工作。这是错误的原因吗?虽然PHP.net指出:(PHP 5> = 5.5.0) http://www.php.net/manual/en/language.generators.overview.php – Willow

回答

0

Generators doc

(PHP 5 >= 5.5.0)

所以不会与PHP 5.4或以下工作。

如果您想在线试用PHP 5.5,请使用codepad.viper-7

+0

嗯,这并不意味着5-5.5? – Willow

+0

@Willow必须阅读为“PHP 5,至少5.5”。 – moonwave99

+0

明白了!所以错误在于我的发电机。谢谢你的帮助。 =) – Willow