How can I swap around / toggle the case of the characters in a string, for example:
$str = \"Hello, My Name is Tom\";
After I run the code
Simplest way to Toggle case is :
echo "tOGGLE cASE : ".(strtolower($str) ^ strtoupper($str) ^ $str);
OK I know you've already got an answer, but the somewhat obscure strtr() function is crying out to be used for this ;)
$str = "Hello, My Name is Tom";
echo strtr($str,
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
Very similar in function to the answer by Mark.
preg_replace_callback(
'/[a-z]/i',
function($matches) {
return $matches[0] ^ ' ';
},
$str
)