忍者ブログ

からすまる日誌

20200114pm02 breakとcontinue *この時間から参加

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

20200114pm02 breakとcontinue *この時間から参加

while文
処理が終わるように書き忘れて無限ループになりやすいので注意
 
--->while.php
  
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>JavaScript</title>
<link rel="stylesheet" href="test1.css">
</head>
<body>
<h1>while文</h1>
<p>
<?php
$i=1;//宣言が必要
while($i<=5){
echo $i.("めのくりかえし<br>");
$i++;
}
?>
</p>
</body>
</html>
 
 
--->while2.php
 
文字列でもできる
  
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>JavaScript</title>
<link rel="stylesheet" href="test1.css">
</head>
<body>
<h1>while文</h1>
<p>
<?php
$str="";//宣言が必要
while($str!="aaaaa"){
echo $str."<br>";
$str.="a";
}
?>
</p>
</body>
</html>
 

while文は
phpでselectしてきた件数分だけ繰り返してねというときによく用いる
この場合forが使えない?らしい
 
つまりphpではwhile文も知っておいてねという
 

selectでとってきたものは「結果セット」というよくわからんものでかえってくるらしい
配列でないのだ
なのでfor eachというのがあるらしい(javaScriptでいうところのfor of文というのに対応するらしい)
よくわからん結果セット→配列にしてやる
みたいな
 

教科書p034
forとifを組み合わせて繰り返しを中断
 
break;
continue;
 

  
どうしてこういうのを使うのか?
上限を切るのに使うのだ
 
<?php
$num=$_GET["num"];
for($i=0; $i<$num; $i++){
echo $i."<br>";
$if($str==3){
break;
}
}
?>
 
ユーザからおくられてくるのは2かも100かも1000かもしれない。
2だったら2でおわる
100だったら3でおわる
1000でも
という風に、「上限をきる」ということができる
 

continueは、
 
<?php
for($i=0; $i<5; $i++){
$if($i%2==0){
continue;
}
echo $i."<br>";
}
?>
 
「偶数だったらとばしてね」とか
「こざきだったらとばしてくれ」というのに使う
 

continueはif分のそとのfor文にかかっているかというよりは、
if文じたいが「条件」で、
continueになったらそのブロックを抜けるみたいな雰囲気らしい
  
for($i=0; $i<5; $i++){
continue;
echo $i."<br>";
}
こうやってかいたら全部すっとばす。ぜんぶじゃなく条件をもたせている感じ
 
--->for.php
 
ifの条件文でbreakなりcontinueはそのひとつ上側のブロックをとめるなりスルーするなりするだけで、
さらに外側とか全体を止めるわけではないよ
 
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>JavaScript</title>
<link rel="stylesheet" href="test1.css">
</head>
<body>
<h1>二重forの内側にifでbreak</h1>
<p>
<?php
for($i=0; $i<5; $i++){
//2nd for
for($j=0; $j<10; $j++){
if($j==3){
break;
}
echo ("i=".$i." j=".$j."<br>");
}
}
?>
</p>
</body>
</html>
 
 
とまっているのは内側のforだけなので、i=4までいくしjは9までいかない。
 
PR

コメント

ブログ内検索

カレンダー

03 2025/04 05
S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30