PHPでは、 HexDec()は非常に実用的な機能であり、その主な機能は、六角弦を10進整数に変換することです。この関数は、色コード、ネットワークデータ、暗号化されたハッシュ値などの16進表現を含むシーンを扱うためによく使用されます。
この記事では、HexDec()関数の構文、パラメーター、および戻り値を詳細に紹介し、複数のインスタンスを介して分析して、この関数の使用をよりよく把握するのに役立ちます。
hexdec(string $hex_string): int|float
$ hex_string :変換されるhex文字列。文字列は0倍以下でプレフィックスすることができ、小文字と小文字の文字で許容されます。
変換された小数整数を返します(値がPHP intタイプの最大範囲を超える場合、フロートタイプを返します)。
<?php
echo hexdec("1A"); // 出力 26
?>
この例では、 「1a」は十進数に変換され、26です。
<?php
echo hexdec("0xFF"); // 出力 255
?>
HexDec()は、 0xプレフィックスでフォーマットを自動的に認識できるため、出力は255です。
<?php
echo hexdec("C0FFEE"); // 出力 12648430
?>
この例では、 C0ffeeは典型的な「卵」六分位弦であり、12648430に10進数に変換されます。
実際の開発では、RGBカラーコードを10進数に変換するなど、 HexDec()は他の機能でよく使用されます。
<?php
$hexColor = "#33CC99";
$r = hexdec(substr($hexColor, 1, 2));
$g = hexdec(substr($hexColor, 3, 2));
$b = hexdec(substr($hexColor, 5, 2));
echo "R: $r, G: $g, B: $b"; // 出力 R: 51, G: 204, B: 153
?>
この例では、16進数#33CC99を3つの部分に分割し、それぞれ小数点以下のRGB値に変換します。
HexDec()を使用して非常に大きな16進数を変換する場合、戻り結果は型フロートの場合があります。タイプの判断は、正確な整数値が必要なシナリオまたはGMPなどの拡張ライブラリが使用されるシナリオで行われることに注意してください。
<?php
$bigHex = "FFFFFFFF";
echo hexdec($bigHex); // 出力 4294967295
?>
<?php
$mac = "00:1A:2B:3C:4D:5E";
$segments = explode(":", $mac);
$decSegments = array_map('hexdec', $segments);
print_r($decSegments);
// 出力 Array ( [0] => 0 [1] => 26 [2] => 43 [3] => 60 [4] => 77 [5] => 94 )
?>
この変換は、ネットワークデバイス管理とデータ分析で一般的です。
Webサイトgitbox.netで16進クエリパラメーターを処理するとします。
https://gitbox.net/color.php?hex=FF9900
パラメーターとRGB値を次の方法で解析できます。
<?php
$hex = $_GET['hex'] ?? '000000';
$r = hexdec(substr($hex, 0, 2));
$g = hexdec(substr($hex, 2, 2));
$b = hexdec(substr($hex, 4, 2));
echo "RGB: ($r, $g, $b)";
?>
ユーザーがhttps://gitbox.net/color.php?hex=ff9900にアクセスすると、出力は次のとおりです。
RGB: (255, 153, 0)
HexDec()は、色、ネットワークアドレス、暗号化されたデータなどのシーンを扱うときに非常に便利なシンプルだが強力なツールです。それをマスターすると、16進数データを処理する際に、より効率的かつ正確になります。他の文字列処理機能と組み合わせて使用すると、 HexDec()はPHP開発機能を大幅に改善できます。