*ブログに戻る →ここ です。


PHPの復習
配列変数の値を変数にコピーする時に値を編集する。 free128

$sada[166] = 20130821
$sada[165] = こんにちは
$sada[156] = 定近
$sada[154] = 充始
$sada[164] = です。

Array ( [149] => トマトジュース [150] => 100 [151] => 200 [152] => 300 [153] => 400 [154] => 充始 [155] => おでん [156] => 定近 [157] => 440 [158] => 450 [159] => 460 [160] => 470 [161] => 480 [162] => 490 [163] => 500 [164] => です。 [165] => こんにちは [166] => 20130821 )

0
80
160
240
320
0
0
0
352
360
368
376
384
392
400
0
0
16104656.8

個別のキーの値も出力されない。もはや$sada_valueは配列変数ではなく、変数なので要素キーが存在しないのだ。

16104656.8


もはや$sada_valueは配列変数ではなく、変数なので要素キーが存在しないのだ。

$sada_value[149] =
$sada_value[150] =
$sada_value[151] =
$sada_value[152] =
$sada_value[153] =


これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が40になるはずがないからだ。

0
40
80
120
160
0
0
0
176
180
184
188
192
196
200
0
0
8052328.4


変数($kittaka_value)の名前に変える。これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が20になるはずがないからだ。

0
20
40
60
80
0
0
0
88
90
92
94
96
98
100
0
0
4026164.2


これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が20になるはずがないからだ。

Array ( [149] => 0 [150] => 20 [151] => 40 [152] => 60 [153] => 80 [154] => 0 [155] => 0 [156] => 0 [157] => 88 [158] => 90 [159] => 92 [160] => 94 [161] => 96 [162] => 98 [163] => 100 [164] => 0 [165] => 0 [166] => 4026164.2 )


Wednesday,August,21,2013

プログラムの表示

PHP言語をHTML表示に対応させるためには[< >]を特殊記号で置き換えなければならない。 そうしないとHTMLまたはPHP展開してしまうからね。 サクラエディタでタグを特殊文字に変換しました。 <p> <?php #あえて要素キーを設定しないで自動生成のキーを割り振るため。 $sada = array(149 => 'トマトジュース',100, 200, 300,400,'充始','おでん','定近',440,450,460,470,480,490,500,'です。','こんにちは',20130821); #普通に配列変数の要素キーを指定して出力する。 print '$sada[166] = '.$sada[166].'<br />'; //20130821 を表示させる。 print '$sada[165] = '.$sada[165].'<br />'; //こんにちは を表示させる。 print '$sada[156] = '.$sada[156].'<br />'; //定近 を表示させる。 print '$sada[154] = '.$sada[154].'<br />'; //充始 を表示させる。 print '$sada[164] = '.$sada[164].'<br />'; //です。 を表示させる。 print '<br />'; #全、配列変数の値を表示させる print_r($sada); print '<br />'; print '<br />'; /*配列変数の値を変数にコピーする*/ #↓アンドを付けると配列変数($sada)の値を変数($sada_value)にコピーする時に値の編集が行(×0,8)なえる。 foreach ($sada as &$sada_value){ $sada_value *= 0.8; #foreach は繰り返し句であるためブロック内の演算を全ての値に対し繰り返す。 } unset($sada_value); #↑編集、演算作業の終わりにはこの句を使う事で、誤って値を編集する事を避ける。 foreach ($sada as $sada_value){ print $sada_value.'<br />';#繰り返し配列変数の値を変数にコピーしている。ここが不思議、キーなしで全値が表示されている? } #忘れていた、foreach は繰り返し句だったね。それからブロック内も繰り返される。 print '<br />'; /*繰り返しの説明*/ /* foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー149の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー150の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー151の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー152の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー153の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー154の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー155の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー156の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー157の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー158の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー159の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー160の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー161の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー162の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー163の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー164の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー165の値に0.8を掛ける。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー166の値に0.8を掛ける。 foreachの先頭に戻る。 全ての要素キーを繰り返した句で終えた。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー149の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー150の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー151の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー152の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー153の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー154の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー155の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー156の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー157の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー158の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー159の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー160の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー161の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー162の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー163の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー164の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー165の値を変数にコピーする。 foreachの先頭に戻る。 foreachは、繰り返し句で特に位置の指定はないので全ての配列変数に対し変数に働きかける値を編集する。 ブロック内の処理、配列変数内の要素キー166の値を変数にコピーする。 foreachの先頭に戻る。 全ての要素キーを繰り返した句で終えた。 */ /*お手本はここまで*/ /*お遊び*/ #全、配列変数の値を表示させる print '個別のキーの値も出力されない。もはや$sada_valueは配列変数ではなく、変数なので要素キーが存在しないのだ。<br />'; print '<br />'; print_r($sada_value);#○出力されない print '<br />'; print '<br />'; print '<br />'; #○個別のキーも出力されない。もはや配列変数ではなく、変数なので要素キーが存在しない。 print 'もはや$sada_valueは配列変数ではなく、変数なので要素キーが存在しないのだ。<br />'; print '<br />'; #普通に配列変数の要素キーを指定して出力する。勘違いしていました。$sada_value配列変数ではなく、変数だった。 print '$sada_value[149] = '.$sada_value[149].'<br />'; //20130821 を表示させる。 print '$sada_value[150] = '.$sada_value[150].'<br />'; //こんにちは を表示させる。 print '$sada_value[151] = '.$sada_value[151].'<br />'; //定近 を表示させる。 print '$sada_value[152] = '.$sada_value[152].'<br />'; //充始 を表示させる。 print '$sada_value[153] = '.$sada_value[153].'<br />'; //です。 を表示させる。 print '<br />'; print '<br />'; #全、配列変数の値を表示させる print 'これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が40になるはずがないからだ。<br />'; print '<br />'; #引継ぎを回避したい。無理だった。 unset($sada_value); #↑編集、演算作業の終わりにはこの句を使う事で、誤って値を編集する事を避ける。 #○引き継いじゃった #↓アンドを付けると配列変数($sada)の値を変数($sada_value)にコピーする時に値の編集が行(×0,8)なえる。 foreach ($sada as &$sada_value){ $sada_value *= 0.5; } unset($sada_value); #↑編集、演算作業の終わりにはこの句を使う事で、誤って値を編集する事を避ける。 foreach ($sada as $sada_value){ print $sada_value.'<br />'; } print '<br />'; print '<br />'; #全、配列変数の値を表示させる print '変数($kittaka_value)の名前に変える。これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が20になるはずがないからだ。<br />'; print '<br />'; #こうなったら、変数の名前を変える。 foreach ($sada as &$kittaka_value){ $kittaka_value *= 0.5; } unset($kittaka_value); #↑編集、演算作業の終わりにはこの句を使う事で、誤って値を編集する事を避ける。 foreach ($sada as $kittaka_value){ print $kittaka_value.'<br />'; } print '<br />'; print '<br />'; #全、配列変数の値を表示させる print 'これは配列変数($sada)そのものの値を編集して書き換えている。なぜなら要素キー150が20になるはずがないからだ。<br />'; print '<br />'; print_r($sada);#○出力されない print '<br />'; print '<br />'; ?> </p>


* 参考にしたサイトは→ こちら です。

これは赤色の文字例です。

これは青色の文字例です。