日別アーカイブ: 2022年11月29日

PHPプログラミングノート4(foreach~switch)

foreach

<?php

// foreach

$ary_persons = [

'name' => 'suzutuki',

'weight' => '55kg',

'height' => '179cm'

];

// Valueのみ表示

foreach($ary_persons as $ary_person){

  echo$ary_person;

}

// KeyとValue両方表示

  echo '<br>';

foreach($ary_persons as $key => $value){

  echo$key.'は'.$value.'です';

}

?>

↑を出力すると・・・

suzutuki55kg179cm
nameはsuzutukiですweightは55kgですheightは179cmです

入れ子が深い場合はこのように出力する

<?php

// foreach

// 連想配列

$ary_members_3 = [ 
'sun_group' => [ 
'suzutuki' => [ 
'weight' => '55kg',
 'height' => '179cm' 
], 
'akatuki' => [ 
'weight' => '70kg', 
'height' => '183cm'
 ],
 ], 
'moon_group' => [
 'akina' => [
 'weight' => '45kg',
 'height' => '149cm'
 ], 
'kotaro' => [
 'weight' => '60kg',
 'height' => '175m'
 ]
 ]
];

// Value両方表示

echo '<br>';

foreach($ary_members_3 as $ary_members_2){

foreach($ary_members_2 as $ary_members_1){

foreach($ary_members_1 as $ary_members => $value){

echo$ary_members.'は'.$value.'です';

// echo $key . 'は' . $value . 'です';

}

}

}

?>

↑を出力すると・・・

weightは55kgですheightは179cmですweightは70kgですheightは183cmですweightは45kgですheightは149cmですweightは60kgですheightは175mです

KeyとValue両方表示する場合は

<?php
// foreach

// 連想配列

$ary_members_3 = [ 
'sun_group' => [ 
'suzutuki' => [ 
'weight' => '55kg',
'height' => '179cm' 
], 
'akatuki' => [ 
'weight' => '70kg', 
'height' => '183cm'
],
], 
'moon_group' => [
'akina' => [
'weight' => '45kg',
'height' => '149cm'
], 
'kotaro' => [
'weight' => '60kg',
'height' => '175m'
]
]
];
// KeyとValue両方表示

echo '<br>';

foreach($ary_members_3 as $ary_members_2){

 foreach($ary_members_2 as $ary_members_1){
 
  foreach($ary_members_1 as $key => $value){

   echo $key . 'は' . $value . 'です';
}
}
}
?>

↑を出力すると・・・

weightは55kgですheightは179cmですweightは70kgですheightは183cmですweightは45kgですheightは149cmですweightは60kgですheightは175mです

for、while、do while文

<?php

// for、while文
for($i = 0; $i < 10; $i++ ) {

if($i === 4){
}
echo $i;
}

echo '<br>';

$j = 0;
while($j < 7){
echo $j;
$j++;
}
echo '<br>';

$h = 0;
do{
echo $h;
$h++;
}
while($h < 5);

?>

↑を出力すると・・・

0123456789
0123456
01234

switch文(Rubyのcase文に似ているが違う)

// switch文
$num = 1;
switch ($num) {

  case1:

    echo'1です';

    break;

  case2:

    echo'2です';

    break;
 
  case3:

    echo'3です';

    break;

  default:

    echo'1-3です';
}

↑を出力すると・・・

1です