當前位置: 首頁> 最新文章列表> bindec 和decbin 函數怎麼配合使用?互轉方法一看就懂

bindec 和decbin 函數怎麼配合使用?互轉方法一看就懂

gitbox 2025-09-09

1. bindec函數簡介

bindec是PHP 中用於將二進制數轉換為十進制數的函數。它接收一個二進制數(以字符串形式傳入)並返回對應的十進制整數。

文法:
 <span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-title function_ invoke__">bindec</span></span><span>(</span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$binary_string</span></span><span>)
</span></span>
示例:
 <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__">bindec</span></span><span>(</span><span><span class="hljs-variable">$binary</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">// 輸出 13</span></span><span>
</span></span>

在這個例子中,我們將二進制數1101轉換成了十進制的13

2. decbin函數簡介

bindec相對, decbin是將十進制數轉換為二進制數的函數。它接收一個十進制數並返回對應的二進製字符串。

文法:
 <span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-title function_ invoke__">decbin</span></span><span>(</span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$number</span></span><span>)
</span></span>
示例:
 <span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-number">13</span></span><span>;
</span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-title function_ invoke__">decbin</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">$binary</span></span><span>;  </span><span><span class="hljs-comment">// 輸出 1101</span></span><span>
</span></span>

在這個例子中,我們將十進制數13轉換成了二進制的1101

3. bindecdecbin配合使用

bindecdecbin可以配合使用,讓我們在二進制和十進制之間自由轉換。比如,我們可以先用decbin將十進制數轉換為二進制,然後用bindec將二進制轉換回十進制。

示例:十進制與二進制互轉
<span><span><span class="hljs-comment">// 十進制轉二進制</span></span><span>
</span><span><span class="hljs-variable">$decimal</span></span><span> = </span><span><span class="hljs-number">27</span></span><span>;
</span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-title function_ invoke__">decbin</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-string">"十進制 <span class="hljs-subst">$decimal</span></span></span><span> 轉換為二進制是: </span><span><span class="hljs-subst">$binary</span></span><span>\n";

</span><span><span class="hljs-comment">// 二進制转十進制</span></span><span>
</span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-string">"11011"</span></span><span>;
</span><span><span class="hljs-variable">$decimal_back</span></span><span> = </span><span><span class="hljs-title function_ invoke__">bindec</span></span><span>(</span><span><span class="hljs-variable">$binary</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"二進制 <span class="hljs-subst">$binary</span></span></span><span> 转换为十進制是: </span><span><span class="hljs-subst">$decimal_back</span></span><span>\n";
</span></span>

輸出:

 <span><span>十進制 27 轉換為二進制是: 11011
二進制 11011 转换为十進制是: 27
</span></span>

通過這個示例,可以看到我們通過decbin27轉換為11011 ,再通過bindec11011轉換回了27 ,實現了十進制和二進制之間的互轉。

4. 注意事項

  • bindecdecbin都只支持標準的二進制和十進制格式。如果傳入無效的二進製字符串(如包含非0、1的字符), bindec將返回0。

  • decbin對於負數的處理也有特別之處。它會返回帶有符號位的二進製字符串。

示例:負數處理
<span><span><span class="hljs-variable">$negative_decimal</span></span><span> = -</span><span><span class="hljs-number">10</span></span><span>;
</span><span><span class="hljs-variable">$binary</span></span><span> = </span><span><span class="hljs-title function_ invoke__">decbin</span></span><span>(</span><span><span class="hljs-variable">$negative_decimal</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"十進制 <span class="hljs-subst">$negative_decimal</span></span></span><span> 轉換為二進制是: </span><span><span class="hljs-subst">$binary</span></span><span>\n";
</span></span>

輸出:

 <span><span>十進制 -10 轉換為二進制是: -1010
</span></span>

這表明decbin會自動為負數加上負號。

5. 總結

bindecdecbin是PHP 中用於二進制與十進制相互轉換的兩個非常實用的函數。它們的配合使用可以幫助我們在編程中更加方便地進行數值轉換,尤其在需要處理二進制數據或進行底層操作時,二進制與十進制的轉換會非常有用。掌握這兩個函數的使用,可以讓你在PHP 編程時更加得心應手。