第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在PHP中foreach 語句可以同時用return 和 break么?

在PHP中foreach 語句可以同時用return 和 break么?

PHP
HUWWW 2019-03-13 21:06:11
在PHP中foreach 語句可以同時用return 和 break么? 例如:$arr = array( '1' => array('name' => 'zhangsan','age' => 20,'sex' => 1), '2' => array('name' => 'lisi','age' => 30,'sex' => 0), '3' => array('name' => 'wangwu','age' => 25,'sex' => 0), '4' => array('name' => 'liuliu','age' => 40,'sex' => 1) );shuffle($arr); //我想隨機(jī)返回一女人的姓名和年齡(男:sex->1;女:sex->0)foreach ($arr as $key => $value) { if($value['sex'] == 1){ //此處return回數(shù)據(jù) result[ 'name' => $value['name'], 'age' => $value['age'] ]; //如果我想在返回數(shù)據(jù)之后立即讓循環(huán)終止還需要break嗎? break; } }
查看完整描述

4 回答

?
桃花長相依

TA貢獻(xiàn)1860條經(jīng)驗 獲得超8個贊

不需要,首先,foreach和for是差不多的,只不過foreach專門針對對象和數(shù)組的循環(huán),對于for循環(huán)用的地方可能更多。
那么,根據(jù)以上的原理可知:

foreach就是一個普通的循環(huán);

對于循環(huán)語句,用return還是break都具有終止循環(huán)的作用。

但是:

return終止循環(huán)的同時同時會終止return所在的方法或者函數(shù)的執(zhí)行,而break只是終止了當(dāng)前整個for循環(huán)的執(zhí)行,當(dāng)前方法或者函數(shù)還是會繼續(xù)執(zhí)行的。

就是這么個區(qū)別。

而在你這程序里面來看,在for循環(huán)里面,break后的return是沒有用的,因為break就直接跳出循環(huán)了,下面的程序不執(zhí)行,也就是根本到不了return。那么反過來看先寫return在寫break,是同樣的道理。

但是這兩個帶來的區(qū)別就是我上面說的,假設(shè)你foreach接下來還要執(zhí)行些什么程序,你在for中用了return,那么foreach后面的程序就不執(zhí)行了,而你用了break,foreach執(zhí)行后繼續(xù)可以執(zhí)行自己想要執(zhí)行的邏輯。

所以,依照此種邏輯,你可以干很多事情了。

查看完整回答
反對 回復(fù) 2019-03-18
?
慕田峪7331174

TA貢獻(xiàn)1828條經(jīng)驗 獲得超13個贊

其實循環(huán)里面使用return是一種很不好的編碼習(xí)慣,可讀性和可維護(hù)性太差!建議在循環(huán)外層定義一個是否需要終止程序執(zhí)行的標(biāo)識變量,當(dāng)需要返回的時候,賦值變量,并break,然后在循環(huán)外層,判斷標(biāo)識,確定是需要return還是繼續(xù)執(zhí)行!
另外講一個開發(fā)中踩過的坑,就是在事務(wù)里面剛好有一個foreach,就有人在foreach里面直接return,由于代碼跑在cli模式下,數(shù)據(jù)庫由于事務(wù)沒有解鎖,直接鎖死了。
其實只要稍微規(guī)范一下代碼,這個坑都是不用踩的!

查看完整回答
反對 回復(fù) 2019-03-18
?
慕蓋茨4494581

TA貢獻(xiàn)1850條經(jīng)驗 獲得超11個贊

不需要 你return 之后 整個 foreach 就停止 執(zhí)行了

查看完整回答
反對 回復(fù) 2019-03-18
?
撒科打諢

TA貢獻(xiàn)1934條經(jīng)驗 獲得超2個贊

可以是都可以。只是
return的話,整個函數(shù)就停止繼續(xù)執(zhí)行了,返回了
break只是跳出循環(huán)

查看完整回答
反對 回復(fù) 2019-03-18
  • 4 回答
  • 0 關(guān)注
  • 543 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號