- strtoupper: documentation ( source)
- preg_replace: documentation ( source)
<?php
function camelCaseToUnderscore($input)
{
return strtoupper(preg_replace('/(?<!^)[A-Z]/', ' $0', $input));
}
echo camelCaseToUnderscore('CamelCaseForTheWin'), "\n";
echo camelCaseToUnderscore('ACar'), "\n";
echo camelCaseToUnderscore('buyACar'), "\n";
echo camelCaseToUnderscore('XML'), "\n";
echo camelCaseToUnderscore('SimpleXML'), "\n";