3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $strings = array('SS2014','SU2014','FW2014','SS2013','FW2013','NW2012'); $cleanUpResult = array(); $counter = 0; $previousYear = ''; $currentIndex = 10; var_dump($strings); foreach($strings as $row){ if($counter == 0){ $previousYear = substr($row, -4); } var_dump('fist row'); var_dump($row); var_dump('counter'); var_dump($counter); var_dump('previous year'); var_dump($previousYear); var_dump('actual year'); var_dump(substr($row, -4)); if($previousYear != substr($row, -4)){ $currentIndex = $currentIndex + 10; } if($counter > 0){ $previousYear = substr($row, -4); } $part = substr($row, 0, 2); switch($part){ case 'SS': $cleanUpResult[$currentIndex + 1] = $row; break; case 'SU': $cleanUpResult[$currentIndex + 2] = $row; break; case 'FW': $cleanUpResult[$currentIndex + 3] = $row; break; case 'WI': $cleanUpResult[$currentIndex + 4] = $row; break; case 'XM': $cleanUpResult[$currentIndex + 5] = $row; break; case 'CO': $cleanUpResult[$currentIndex + 6] = $row; break; case 'NW': $cleanUpResult[$currentIndex + 7] = $row; break; default: break; } $counter++; } var_dump($cleanUpResult);
Output for 4.3.0 - 5.6.28, hhvm-3.12.0, 7.0.0 - 7.1.0
array(6) { [0]=> string(6) "SS2014" [1]=> string(6) "SU2014" [2]=> string(6) "FW2014" [3]=> string(6) "SS2013" [4]=> string(6) "FW2013" [5]=> string(6) "NW2012" } string(8) "fist row" string(6) "SS2014" string(7) "counter" int(0) string(13) "previous year" string(4) "2014" string(11) "actual year" string(4) "2014" string(8) "fist row" string(6) "SU2014" string(7) "counter" int(1) string(13) "previous year" string(4) "2014" string(11) "actual year" string(4) "2014" string(8) "fist row" string(6) "FW2014" string(7) "counter" int(2) string(13) "previous year" string(4) "2014" string(11) "actual year" string(4) "2014" string(8) "fist row" string(6) "SS2013" string(7) "counter" int(3) string(13) "previous year" string(4) "2014" string(11) "actual year" string(4) "2013" string(8) "fist row" string(6) "FW2013" string(7) "counter" int(4) string(13) "previous year" string(4) "2013" string(11) "actual year" string(4) "2013" string(8) "fist row" string(6) "NW2012" string(7) "counter" int(5) string(13) "previous year" string(4) "2013" string(11) "actual year" string(4) "2012" array(6) { [11]=> string(6) "SS2014" [12]=> string(6) "SU2014" [13]=> string(6) "FW2014" [21]=> string(6) "SS2013" [23]=> string(6) "FW2013" [37]=> string(6) "NW2012" }
Output for hhvm-3.10.0

Process exited with code 153.