给定的代码段(有和没有;
)之间是否有任何区别:
|
\|/
foreach($errors->get_error_codes() as $error);
if( strpos(ucwords(str_replace('_',' ',$error)),'nvalid Username'))
和
foreach($errors->get_error_codes() as $error)
if( strpos(ucwords(str_replace('_',' ',$error)),'nvalid Username'))
实际上它们都提供相同的输出。所以我可以在语句之前终止for循环。
答案 0 :(得分:2)
使用
时foreach($errors->get_error_codes() as $error);
它会将$errors->get_error_codes()
中的最后一个值存储为$error
,然后检查条件以及是否使用
foreach($errors->get_error_codes() as $error)
if( strpos(ucwords(str_replace('_',' ',$error)),'nvalid Username'))
然后每个$errors->get_error_codes()
值将被视为$error
并检查条件。
简单
foreach($errors->get_error_codes() as $error);
将循环,但$error
获取该数组中的最后一个元素
答案 1 :(得分:1)
你可以使用 Break; 来打破循环,继续; 如果你想打破当前的迭代
答案 2 :(得分:1)
您获得相同的输出,因为$ errors数组只包含一个条目。
答案 3 :(得分:1)
foreach($errors->get_error_codes() as $error);
此行将最后一个元素存储在$error
变量中,并且没有{}块;
并非所有人都知道此行为,并且可能会导致意外结果。
另一行仅影响下一行,因为没有由{}确定的代码块。
您可以使用 break; 关键字来中断循环。您还可以使用继续关键字跳过循环迭代。