概要
閲覧数:1639
投稿日:2013-08-18
更新日:2013-08-24
・配列要素を2倍した後、foreach文で文字列連結して表示
考え方
・arr[0]に対して、配列の中身を処理
・arr[1]に対して、最初にカンマを出力して、配列の中身を処理
・arr[2]に対して、最初にカンマを出力して、配列の中身を処理
・arr[3]に対して、最初にカンマを出力して、配列の中身を処理
下記とはちょっとだけ異なるコード
$arr = array();
$str = array();
$arr = array(1,2,3,4);
$outputcomma = 0;
foreach($arr as $val) {
if ($outputcomma) {//初回は$outputcommaが0でfalseなので、elseへ飛ぶ
echo ",";
} else {//初回は$outputcommが1になるだけで、次からは、上がtrueになり、こちらへはこない
$outputcomma=1;
}
echo $val*2;//ここで配列の要素に対する処理
}
コード
$arr = array();
$arr=range(1,4);
$str = NULL;
foreach($arr as $val){
if($str!="") $str.=",";//$strが""でなければ(値がなければ)true。初回はfalseだから処理を飛ばす(,を付与しない)
$str.=$val*2;//初回は1
}
print_r($str);結果
2,4,6,8