$s = 'aGVsqwerqwERWERDDFbG8=';
echo preg_replace('/[a-z]/ie', '"$0"^" "', $s);
A 二进制内码表示为 01000001
a 二进制内码表示为 01100001
空格 二进制内码表示为 00100000
所以字母与空格异或后正好是变换大小写
$s = 'aGVsqwerqwERWERDDFbG8=';
echo preg_replace('/[a-z]/ie', '"$0"^" "', $s);
A 二进制内码表示为 01000001
a 二进制内码表示为 01100001
空格 二进制内码表示为 00100000
所以字母与空格异或后正好是变换大小写