3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php // Everything you enter here will be executed by our servers. Try it! function isCamelCaps( $string, $classFormat=false, $public=true, $strict=true ) { // Check the first character first. if ($classFormat === false) { if ($public === false) { $legalFirstChar = '[_][a-z]'; } else { $legalFirstChar = '[a-z]'; } } else { $legalFirstChar = '[A-Z]'; } if (preg_match("|^$legalFirstChar|", $string) === 0) { return false; } echo '!!!'; // Check that the name only contains legal characters. $legalChars = 'a-zA-Z0-9'; if (preg_match("|[^$legalChars]|", substr($string, 1)) > 0) { return false; } if ($strict === true) { // Check that there are not two capital letters next to each other. $length = strlen($string); $lastCharWasCaps = $classFormat; for ($i = 1; $i < $length; $i++) { $ascii = ord($string{$i}); if ($ascii >= 48 && $ascii <= 57) { // The character is a number, so it cant be a capital. $isCaps = false; } else { if (strtoupper($string{$i}) === $string{$i}) { $isCaps = true; } else { $isCaps = false; } } if ($isCaps === true && $lastCharWasCaps === true) { return false; } $lastCharWasCaps = $isCaps; } }//end if return true; } var_dump(isCamelCaps('AddStep2NewBookAdd', false, true, true));
Output for 4.3.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
bool(false)