In der Entwicklung ist die Phasenkonvertierung eine häufige Anforderung, insbesondere wenn es um numerische Systeme, Datenverschlüsselung oder Interaktion mit verschiedenen Codierungssystemen geht. PHP liefert mehrere integrierte Funktionen, um die Umwandlung des Binärs zu erleichtern. Zwei häufig verwendete Funktionen sind Base_convert () und deChex () , die zwischen verschiedenen Ziffern konvertieren können. In diesem Artikel werden wir untersuchen, wie diese beiden Funktionen kombiniert werden, um den Betrieb einer Phasenumwandlung zu vereinfachen.
Verstehen Sie zunächst die grundlegenden Funktionen dieser beiden Funktionen:
Base_Convert ($ Number, $ von_base, $ to_base) : $ number von $ von_base nach $ to_base konvertieren. Unterstützte Berechnungsbereiche liegen zwischen 2 und 36.
DECHEX ($ Number) : Konvertiert die Dezimalzahl $ $ nummer in eine von hexadezimal dargestellte Zeichenfolge.
Base_Convert () ist eine sehr flexible Funktion, mit der wir zwischen verschiedenen binären Systemen konvertieren können. Durch diese Funktion können wir den start- und gezielten Binären angeben und verschiedene Umwandlungsformen von binärem Oktal zu hexadezimalem Umwandler verarbeiten.
Zum Beispiel konvertieren wir eine Binärzahl in eine Dezimalzahl:
<span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-string">'1101'</span></span><span>;
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">base_convert</span></span><span>(</span><span><span class="hljs-variable">$binary</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$decimal</span></span><span>; </span><span><span class="hljs-comment">// Ausgabe 13</span></span><span>
</span></span>
Wir können auch Dezimalstellen in Hexadezimal umwandeln:
<span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-number">255</span></span><span>;
</span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-title function_ invoke__">base_convert</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>, </span><span><span class="hljs-number">16</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$hex</span></span><span>; </span><span><span class="hljs-comment">// Ausgabe ff</span></span><span>
</span></span>
deChex () ist eine Funktion, die sich mehr auf Dezimaler zu Hexadezimal konzentriert, die Dezimalzahlen direkt in hexadezimale Darstellungen umwandelt. Im Vergleich zu Base_Convert () ist DeChex () prägnanter, insbesondere wenn wir uns nur mit der Umwandlung zwischen Dezimal- und Hexadezimalumwandten befassen müssen.
Konvertieren Sie beispielsweise eine Dezimalzahl in Hexadezimal:
<span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-number">255</span></span><span>;
</span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dechex</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$hex</span></span><span>; </span><span><span class="hljs-comment">// Ausgabe ff</span></span><span>
</span></span>
In einigen Fällen kann die Verwendung dieser beiden Funktionen die Binärumwandlung effizienter ausführen, insbesondere wenn es notwendig ist, direkt von einem bestimmten Binären in Hexadezimal konvertiert zu werden. Wenn wir beispielsweise eine Binärzahl in Hexadezimalzahl umwandeln wollen, können wir dies tun, indem wir zuerst das Binäre in Dezimalheit umwandeln und dann die Dezimalheit in Hexadezimal umwandeln:
<span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-string">'1101'</span></span><span>;
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">base_convert</span></span><span>(</span><span><span class="hljs-variable">$binary</span></span><span>, </span><span><span class="hljs-number">2</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>); </span><span><span class="hljs-comment">// Binär zuerst in Dezimalheit umwandeln</span></span><span>
</span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dechex</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>); </span><span><span class="hljs-comment">// Dann konvertieren Sie die Dezimalzahl in Hexadezimal</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$hex</span></span><span>; </span><span><span class="hljs-comment">// Ausgabe d</span></span><span>
</span></span>
Dieses Beispiel zeigt, wie man Hexadezimalergebnisse direkt aus binär durch zwei Schritte erzielt.
Angenommen, wir müssen von einer ternären Zahl in Hexadezimal konvertieren. Wir können zuerst die Ternärin in Dezimalheit umwandeln und dann Dezimal in Hexadezimal umwandeln:
<span><span><span class="hljs-variable">$ternary</span></span><span> = </span><span><span class="hljs-string">'10212'</span></span><span>; </span><span><span class="hljs-comment">// Dies ist eine ternäre Zahl</span></span><span>
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-title function_ invoke__">base_convert</span></span><span>(</span><span><span class="hljs-variable">$ternary</span></span><span>, </span><span><span class="hljs-number">3</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>); </span><span><span class="hljs-comment">// Ternärer zuerst in Dezimalheit umwandeln</span></span><span>
</span><span><span class="hljs-variable">$hex</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dechex</span></span><span>(</span><span><span class="hljs-variable">$decimal</span></span><span>); </span><span><span class="hljs-comment">// Dezimal in Hexadezimal umwandeln</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$hex</span></span><span>; </span><span><span class="hljs-comment">// Ausgabe 94</span></span><span>
</span></span>
Dieser Vorgang vervollständigt eine komplexe Division Conversion, indem integrierte Funktionen zweimal aufgerufen werden.
Durch Kombinieren von Base_Convert () und deChex () können wir die Konvertierung von willkürlich zu hexadezimal flexibel vervollständigen. Base_convert () bietet eine umfassende Unterstützung für die transkritische Konvertierung, während deChex () eine kurze und effiziente Lösung für die Dezimal -HEX -Konvertierung bietet. Durch die Kombination dieser beiden Funktionen können wir die Konvertierungsanforderungen zwischen verschiedenen Ziffern effizient behandeln.
Durch die Einführung dieses Artikels können Sie entsprechende Funktionen auswählen, um den Abteilungskonvertierungsvorgang gemäß verschiedenen Szenarien und Bedürfnissen zu verarbeiten, was nicht nur die Einfachheit des Codes verbessert, sondern auch die Entwicklungseffizienz verbessert.