XOR 演算子をeval()または任意の言語構造に適用できるかどうか疑問に思っていました。これを例に取ります:
$code = '$result = ' . function. '() { return true; };';
eval($code);
コンストラクトを無効な変数として呼び出すことを考えると、 eval()以外に「 function」をキーワードとして評価する方法が他にないため、次は無効になります。
$_ = (":"^"_").(')'^'_').(">"^"_").(","^"@"); // --> eval
$_($code);
では、どうすればeval()を (特に XOR で)難読化できるでしょうか?