php字串轉為16進位的方法:先找到並開啟common.php;然後加入strToHex函數;最後透過strToHex函數實作字串轉十六進位即可。
推薦:《PHP影片教學》
PHP 字串與十六進位互轉
今天在做專案中,因為要調用別人網站的接口,結果需要對請求和返回的時間進行十六進制加密處理,於是在網上查了下資料謝了一個轉換Demo做個記錄。
如果在TP下使用可以將下面函數放到common.php中
一,加密函數
<?php /** *字符串转十六进制函数 *@pream string $str='abc'; */ function strToHex($str){ $hex=""; for($i=0;$i<strlen($str);$i++) $hex.=dechex(ord($str[$i])); $hex=strtoupper($hex); return $hex; } ?>
二、解密函數
<?php /** *十六进制转字符串函数 *@pream string $hex='616263'; */ function hexToStr($hex){ $str=""; for($i=0;$i<strlen($hex)-1;$i+=2) $str.=chr(hexdec($hex[$i].$hex[$i+1])); return $str; } ?>
加密解密轉換函數使用Demo事例,這裡為了方便寫在了一個類別中。
<?php class Test{ /** *字符串转十六进制函数 *@pream string $str='abc'; */ public function strToHex($str){ $hex=""; for($i=0;$i<strlen($str);$i++) $hex.=dechex(ord($str[$i])); $hex=strtoupper($hex); return $hex; } /** *十六进制转字符串函数 *@pream string $hex='616263'; */ public function hexToStr($hex){ $str=""; for($i=0;$i<strlen($hex)-1;$i+=2) $str.=chr(hexdec($hex[$i].$hex[$i+1])); return $str; } } <span style="white-space:pre"> </span>//测试Demo效果 $test = new Test(); $str = '要加密的内容sxfenglei'; $data = $test->strToHex($str); echo '加密内容:要加密的内容sxfenglei <br>'.$data.'<hr>'; $output = $test->hexToStr($data); echo '解密内容:E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569 <br>'.$output; ?>
運行結果:
加密内容:要加密的内容sxfenglei E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569 解密内容:E8A681E58AA0E5AF86E79A84E58685E5AEB9737866656E676C6569 要加密的内容sxfenglei
以上是php 字串轉為16進位的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!