Position actuelle: Accueil> Derniers articles> Comment combiner Base_Convert () et DeChex () en PHP pour simplifier l'opération de conversion?

Comment combiner Base_Convert () et DeChex () en PHP pour simplifier l'opération de conversion?

gitbox 2025-06-23

Comment combiner Base_Convert () et DeChex () en PHP pour simplifier l'opération de conversion?

En développement, la conversion de phase est une exigence commune, en particulier lorsqu'elle traite des systèmes numériques, du chiffrement des données ou de l'interaction avec différents systèmes d'encodage. PHP fournit plusieurs fonctions intégrées pour faciliter la conversion du binaire. Deux fonctions couramment utilisées sont Base_Convert () et DeChex () , qui peuvent convertir entre différents chiffres. Dans cet article, nous explorerons comment combiner ces deux fonctions pour simplifier le fonctionnement d'une conversion de phase.

1. Utilisation de base de Base_Convert () et DeChex ()

Tout d'abord, comprenez les fonctions de base de ces deux fonctions:

  • Base_Convert ($ Number, $ FROM_BASE, $ to_base) : Convertir $ numéro de $ From_Base à $ à_base . Les gammes de calcul prises en charge sont de 2 à 36.

  • DECHEX (Numéro $) : convertit le numéro décimal $ Number en une chaîne représentée par HexaDecimal.

2. Utilisez Base_Convert () pour la conversion binaire

Base_Convert () est une fonction très flexible qui nous permet de convertir entre différents systèmes binaires. Grâce à cette fonction, nous pouvons spécifier le binaire de démarrage et ciblé et gérer diverses formes de conversion de l'octal binaire en hexadécimal.

Par exemple, nous convertissons un numéro binaire en un numéro décimal:

 <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">// Sortir 13</span></span><span>
</span></span>

Nous pouvons également convertir la décimale en hexadécimal:

 <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">// Sortir ff</span></span><span>
</span></span>

3. Utilisez DeChex () pour convertir décimal en hexadécimal

DECHEX () est une fonction qui se concentre davantage sur la décimale en hexadécimal, qui convertit directement les nombres décimaux en représentations hexadécimales. Par rapport à Base_Convert () , DeChex () est plus concis, surtout lorsque nous avons seulement besoin de faire face à la conversion entre décimal et hexadécimal.

Par exemple, convertissez un numéro décimal en hexadécimal:

 <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">// Sortir ff</span></span><span>
</span></span>

4. Utilisez Base_Convert () et DeChex () en combinaison

Dans certains cas, l'utilisation de ces deux fonctions peut effectuer la conversion binaire plus efficacement, en particulier lorsqu'il est nécessaire de se convertir directement d'un certain binaire en hexadécimal. Par exemple, si nous voulons convertir un numéro binaire en nombre hexadécimal, nous pouvons le faire en convertissant d'abord le binaire en décimal puis en convertissant la décimale en hexadécimal:

 <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">// Convertir le binaire en décimal en premier</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">// Puis convertissez la décimale en hexadécimal</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">// Sortir d</span></span><span>
</span></span>

Cet exemple montre comment obtenir des résultats hexadécimaux directement du binaire à deux étapes.

5. Exemple de conversion en plusieurs étapes

Supposons que nous devons nous convertir d'un numéro ternaire en hexadécimal. Nous pouvons d'abord convertir Ternary en décimal, puis convertir décimal en hexadécimal:

 <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">// Ceci est un numéro ternaire</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">// Convertir le ternaire en décimal d&#39;abord</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">// Convertir la décimale en hexadécimal</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">// Sortir 94</span></span><span>
</span></span>

Ce processus termine la conversion de division complexe en appelant deux fois les fonctions intégrées.

6. Résumé

En combinant Base_Convert () et DeChex () , nous pouvons compléter la conversion de manière flexible de l'arbitraire en hexadécimal. Base_Convert () fournit un support étendu pour la conversion transcritique, tandis que DeChex () fournit une solution concise et efficace pour une décimale à la conversion hexagonale. Grâce à la combinaison de ces deux fonctions, nous pouvons gérer efficacement les exigences de conversion entre différents chiffres.

Grâce à l'introduction de cet article, vous pouvez sélectionner des fonctions appropriées pour gérer l'opération de conversion de division en fonction de différents scénarios et besoins, ce qui améliore non seulement la simplicité du code, mais améliore également l'efficacité du développement.