これは奇妙な質問ですが、面白いので私は尋ねると思っていました。私はPHPのforeach
ループがどのように動作するのが好きではないと私はいつも私がしたすべての形式でそれを使用し、foreach
ループの内側にカウンタを追加し、最後の要素にいるかどうかを知るために使用します。アーキテクチャを変更することはできますか?
$counter = 1;
$array_size = count($array);
foreach($array as $item){
//code
if($counter == $array_size){
$isLast = true
} else {
$isLast = false;
}
$counter++;
}
私の質問は:私はを必要とせずに、上書きまたはフォークまたは継承(またはあなたがそれを呼び出すために好きな)私は今、これを行うことができるように、この新しい機能が含まれるように、元のPHPのforeachループをすることができますカウンタなどを初期化する。
newforeach($array as $item){
//code
$isLast = //something that returns true/false;
}
それは面白いアイデアだので、ここハードコアPHPの選手の一人が何らかの形でこれを可能にすることができる場合、私は疑問に思いますか?または言語自体をハッキングすることなく複雑すぎるこの種の修正方法?
、確実に、言語の制御構造の動作方法を変更すると、言語をハッキング」が必要です自分自身 " –
[あなたの他の質問](http://stackoverflow.com/questions/4943719/in-foreach-islastitem-exists)についてはどうですか? – Gumbo
少なくとも、$ isLast =($ counter == $ array_size); ' – gnur