Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.php > #16611
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Newsgroups | comp.lang.php |
| Subject | Re: break foreach loop after certain iteration and then start it |
| Date | 2016-03-05 02:28 +0100 |
| Organization | PointedEars Software (PES) |
| Message-ID | <2056947.pXOX0CipXs@PointedEars.de> (permalink) |
| References | <6586983f-c3bc-4eb7-92a3-6035952e8cbb@googlegroups.com> <56D946D4.9030504@arnowelzel.de> |
Arno Welzel wrote:
> <?php
> $counter = 0;
>
> foreach($mylist as $element)
^^
> {
> // Do something with $element
>
> // Add something every three elements
> $counter++;
> if($counter==3)
^^
Flow control statements should not be written like function calls.
> {
> echo '<div id="logo"></div>';
> $counter = 0;
> }
> }
One does not have to reset the counter if one uses the modulo operator, %,
to determine the indexes that are divisible by 3 without remainder.
++$counter;
if ($counter % 3 === 0)
{
…
}
or
if (++$counter % 3 === 0)
{
…
}
If the array is not associative and not sparse, the index is implicit and
starting from 0, so no counter is needed. 0 is divisible by 3 without
remainder, so one has to look for the remainder 2 for the third, sixth etc.
element [2 ≡ 1 (mod 3)]:
foreach ($mylist as $index => $element)
{
if ($index % 3 === 2)
{
…
}
}
Or, if this is too confusing,
if (($index + 1) % 3 === 0)
{
…
}
> ?>
Don’t.
--
PointedEars
Zend Certified PHP Engineer
<http://www.zend.com/en/yellow-pages/ZEND024953> | Twitter: @PointedEars2
Please do not cc me. / Bitte keine Kopien per E-Mail.
Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
break foreach loop after certain iteration and then start it apoorv.kanungo@gmail.com - 2016-03-03 22:08 -0800
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-04 09:27 +0100
Re: break foreach loop after certain iteration and then start it Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-05 02:28 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-04 21:32 -0500
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-05 10:52 +0100
Re: break foreach loop after certain iteration and then start it Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-05 11:46 +0100
Re: break foreach loop after certain iteration and then start it Tim Streater <timstreater@greenbee.net> - 2016-03-05 12:08 +0000
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-05 14:10 +0100
Re: break foreach loop after certain iteration and then start it Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-05 17:55 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-05 08:50 -0500
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-06 10:57 +0100
Re: break foreach loop after certain iteration and then start it Tim Streater <timstreater@greenbee.net> - 2016-03-06 11:26 +0000
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-06 10:12 -0500
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-06 22:48 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-06 20:49 -0500
Re: break foreach loop after certain iteration and then start it "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-07 16:28 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-07 12:38 -0500
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-07 17:42 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-07 12:39 -0500
Re: break foreach loop after certain iteration and then start it Arno Welzel <usenet@arnowelzel.de> - 2016-03-09 08:18 +0100
Re: break foreach loop after certain iteration and then start it "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-09 10:05 +0100
Re: break foreach loop after certain iteration and then start it Jerry Stuckle <jstucklex@attglobal.net> - 2016-03-09 08:56 -0500
Re: break foreach loop after certain iteration and then start it "R.Wieser" <address@not.available> - 2016-03-04 09:34 +0100
csiph-web