Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
PHP で 2 つの変数の値を交換するために、次のコード スニペットを見つけました。
<?php $a = ‘bar’; $b = ‘foo’; $a = $a ^ $b; $b = $a ^ $b; $a = $a ^ $b; echo $a . $b;
バイナリの概念を理解しています。これは常に文字列で機能しますか? どのように?
PHP は、ビットごとの演算子を各文字に個別に適用することで、文字列に適用します。
PHP: ビット演算子:
データ型の変換に注意してください。左側と右側の両方のパラメータが文字列の場合、ビット単位の演算子は文字の ASCII 値を操作します。
これは、両方の文字列が同じ文字数、より正確には同じバイト数である場合に機能します。上記の引用が本当に正確である場合、それは ASCII のみの文字列に対してのみ機能する可能性があります。