3v4l.org

run code in 300+ PHP versions simultaneously
<?php $item_list = array( "Afghanistan", "Albania", "Algeria", "Andorra", "Angola", "Anguilla", "Antigua & Barbuda", "Argentina", "Armenia", "Aruba", "Australia", "Austria", "Azerbaijan", "Bahamas", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belau (Palau)", "Belgium", "Belize", "Benin", "Bermuda", "Bhutan", "Bolivia", "Bosnia Herzegovina", "Botswana", "Brazil", "British Indian Ocean", "British Virgin Islands", "Brunei Darussalam", "Bulgaria", "Burkina Faso", "Burundi", "Cambodia", "Cameroon", "Canada", "Cape Verde", "Cayman Islands", "Central African Rep.", "Chad", "Chile", "China (PR)", "Christmas Island", "Cocos Island", "Colombia", "Comoros", "Congo", "Congo Dem. Rep.", "Costa Rica", "Cote d'Ivoire", "Croatia", "Cuba", "Cyprus", "Czech Republic", "Denmark", "Djibouti", "Dominica", "Dominican Republic", "East Timor", "Ecuador", "Egypt", "El Salvador", "Equatorial Guinea", "Eritrea", "Estonia", "Ethiopia", "Falkland Islands", "Faroe Islands", "Fiji", "Finland", "France", "French Guiana", "French Polynesia", "French Antarctic", "Gabon", "Gambia", "Georgia", "Germany", "Ghana", "Gibraltar", "Greece", "Greenland", "Grenada", "Guam", "Guatemala", "Guinea", "Guinea Bissau", "Guyana", "Haiti", "Honduras", "Hong Kong", "Hungary", "Iceland", "India", "Indonesia", "Iran", "Iraq", "Irish Republic", "Israel", "Italy", "Jamaica", "Japan", "Jordan", "Kazakhstan", "Kenya", "Kirghizstan/Kyrgyzstan", "Kiribati", "Korea (DPR)", "Korea (Republic of)", "Kuwait", "Laos", "Latvia", "Lebanon", "Lesotho", "Liberia", "Libya", "Liechtenstein", "Lithuania", "Luxembourg", "Macao", "Macedonia (FYR)", "Madagascar", "Malawi", "Malaysia", "Maldives", "Mali", "Malta", "Marshall Islands", "Mauritania", "Mauritius", "Mexico", "Micronesia", "Moldova", "Monaco", "Mongolia", "Montenegro", "Montserrat", "Morocco", "Mozambique", "Myanmar (Burma)", "Namibia", "Nauru Island", "Nepal", "Netherland Antilles", "Netherlands", "New Caledonia", "New Zealand", "Nicaragua", "Niger Republic", "Nigeria", "Norfolk Island", "Northern Mariana Isl", "Norway", "Oman", "Pakistan", "Panama", "Papua New Guinea", "Paraguay", "Peru", "Philippines", "Pitcairn Island", "Poland", "Portugal", "Puerto Rico", "Qatar", "Reunion", "Romania", "Russia", "Rwanda", "Samoa (American)", "San Marino", "Sao Tome & Principe", "Saudi Arabia", "Senegal", "Seychelles", "Sierra Leone", "Singapore", "Slovak Republic", "Slovenia", "Solomon Islands", "Somalia", "South Africa", "South Georgia", "Spain", "Sri Lanka", "St Kitts & Nevis", "St Helena", "St Lucia", "St Pierre & Miquelon", "St Vincent & Grenadines", "Sudan", "Suriname", "Swaziland", "Sweden", "Switzerland", "Syria", "Taiwan", "Tajikistan", "Tanzania", "Thailand", "Togo", "Tonga", "Trinidad & Tobago", "Tunisia", "Turkey", "Turkmenistan", "Turks & Caicos Islands", "Tuvalu", "Uganda", "Ukraine", "United Arab Emirates", "United Kingdom", "Uruguay", "USA", "Uzbekistan", "Vanuatu", "Vatican City State", "Venezuela", "Vietnam", "Virgin Islands (USA)", "Wallis & Futuna Islands", "Western Samoa", "Yemen", "Zambia", "Zimbabwe"); $minimum_items_per_page = 30; $page_list = paginate_items($item_list, $minimum_items_per_page); print_r($page_list); //------------------------------------------------------------ function paginate_items($item_list, $minimum_items_per_page){ $item_count = count ($item_list); //[226] $minimum_items_per_page; //[30] $pages = ($item_count/$minimum_items_per_page); //[7] $remainder = $item_count % $minimum_items_per_page; //[16] $remPerPage = round($remainder/$pages); //[2] $remain2 = ($remainder % $pages); //[2] $limit = $minimum_items_per_page + $remPerPage; //[32] $outcome = array(); $offset = 0; for ($i = 1; $i < $pages; $i++) { if($remain2 > 0) { $limit += 1; $remain2 -= 1; } /*for ($i2 = $offset; $i2 < $offset + $limit; $i2++) { print($item_list[$i2]."<br>"); }*/ $outcome[] = array("offset" => ($offset), "limit" => ($limit)); $offset += $limit; } print_r($outcome); } ?>
Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
Deprecated: Implicit conversion from float 7.533333333333333 to int loses precision in /in/5cEb1 on line 18 Array ( [0] => Array ( [offset] => 0 [limit] => 33 ) [1] => Array ( [offset] => 33 [limit] => 34 ) [2] => Array ( [offset] => 67 [limit] => 34 ) [3] => Array ( [offset] => 101 [limit] => 34 ) [4] => Array ( [offset] => 135 [limit] => 34 ) [5] => Array ( [offset] => 169 [limit] => 34 ) [6] => Array ( [offset] => 203 [limit] => 34 ) )
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 Deprecated: Implicit conversion from float 7.533333333333333 to int loses precision in /in/5cEb1 on line 18 Array ( [0] => Array ( [offset] => 0 [limit] => 33 ) [1] => Array ( [offset] => 33 [limit] => 34 ) [2] => Array ( [offset] => 67 [limit] => 34 ) [3] => Array ( [offset] => 101 [limit] => 34 ) [4] => Array ( [offset] => 135 [limit] => 34 ) [5] => Array ( [offset] => 169 [limit] => 34 ) [6] => Array ( [offset] => 203 [limit] => 34 ) )
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30
Array ( [0] => Array ( [offset] => 0 [limit] => 33 ) [1] => Array ( [offset] => 33 [limit] => 34 ) [2] => Array ( [offset] => 67 [limit] => 34 ) [3] => Array ( [offset] => 101 [limit] => 34 ) [4] => Array ( [offset] => 135 [limit] => 34 ) [5] => Array ( [offset] => 169 [limit] => 34 ) [6] => Array ( [offset] => 203 [limit] => 34 ) )

preferences:
265.62 ms | 404 KiB | 291 Q