3v4l.org

run code in 300+ PHP versions simultaneously
<?php function hashCalc($arrKey) { $keyLen=count($arrKey); $hash=5381; $i=0; for(;$keyLen>=8;$keyLen-=8) { $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; $hash=(($hash<<5)+$hash)+$arrKey[$i++]; } switch($keyLen) { case 7: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 6: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 5: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 4: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 3: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 2: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 1: $hash=(($hash<<5)+$hash)+$arrKey[$i++]; case 0: default: break; } return $hash; } $arrInput=explode(",","0,1,2,3,4,5,6,7,8,9,1,2,3,4,5"); echo hashCalc($arrInput);

preferences:
37.58 ms | 402 KiB | 5 Q