First and Last Entry on a Page using Modulus Remainder

So I know it's quite a long title but I'm not sure what I'll be searching next time. It has taken me a lot longer than I thought it would mostly out of frustration and the inability to know exactly what I'm looking for... always difficult. After a cup of tea the solution was glaringly obvious, just do a primary school mathematics table and it all makes sense (see my 10 mod table below).

This article is a quick note (so I never spend as long again) in PHP on how to determine when looping through a loop, which entry was first and which was last. This is incredibly useful for pagination.

The Situation
I want the script to start writing a DIV layer in the code at the start of the loop (and at every first entry of a page). I want the script to close the DIV layer at the last entry of each page.

So I have a loop
Rather crude but it's a FOR loop for those old CMS's running PHP4:
copyraw
for ($this_link_index=1; $this_link_index
  1.  for ($this_link_index=1$this_link_index 

The FIRST entry
copyraw
if (($this_link_index % $links_per_page)==1) {
	//... do something for first entry ...
}
  1.  if (($this_link_index % $links_per_page)==1) { 
  2.      //... do something for first entry ... 
  3.  } 

The LAST entry
copyraw
if (($this_link_index % $links_per_page)==0) {
 //... do something for last entry ...
}
  1.  if (($this_link_index % $links_per_page)==0) { 
  2.   //... do something for last entry ... 
  3.  } 

Based on:
copyraw
1 mod 5 = 1
2 mod 5 = 2
3 mod 5 = 3
4 mod 5 = 4
5 mod 5 = 0
6 mod 5 = 1
7 mod 5 = 2
8 mod 5 = 3
9 mod 5 = 4
10 mod 5 = 0
  1.  1 mod 5 = 1 
  2.  2 mod 5 = 2 
  3.  3 mod 5 = 3 
  4.  4 mod 5 = 4 
  5.  5 mod 5 = 0 
  6.  6 mod 5 = 1 
  7.  7 mod 5 = 2 
  8.  8 mod 5 = 3 
  9.  9 mod 5 = 4 
  10.  10 mod 5 = 0 
Category: Personal Home Page :: Article: 386

Add comment

Your rating:

Submit

Credit where Credit is Due:


Feel free to copy, redistribute and share this information. All that we ask is that you attribute credit and possibly even a link back to this website as it really helps in our search engine rankings.

Disclaimer: Please note that the information provided on this website is intended for informational purposes only and does not represent a warranty. The opinions expressed are those of the author only. We recommend testing any solutions in a development environment before implementing them in production. The articles are based on our good faith efforts and were current at the time of writing, reflecting our practical experience in a commercial setting.

Thank you for visiting and, as always, we hope this website was of some use to you!

Kind Regards,

Joel Lipman
www.joellipman.com

Please publish modules in offcanvas position.