PHP字串與位元組轉換範例
refer:http://www.php230.com/1410667081.html
<code><span><span><?php</span><span>/** * byte数组与字符串转化类 */</span><span><span>class</span><span>Bytes</span> {</span><span>/** * 转换一个String字符串为byte数组 *<span> @param</span> $str 需要转换的字符串 *<span> @param</span> $bytes 目标byte数组 *<span> @author</span> Zikie */</span><span>public</span><span>static</span><span><span>function</span><span>getBytes</span><span>(<span>$string</span>)</span> {</span><span>$bytes</span> = <span>array</span>(); <span>for</span>(<span>$i</span> = <span>0</span>; <span>$i</span> < strlen(<span>$string</span>); <span>$i</span>++){ <span>$bytes</span>[] = ord(<span>$string</span>[<span>$i</span>]); } <span>return</span><span>$bytes</span>; } <span>/** * 将字节数组转化为String类型的数据 *<span> @param</span> $bytes 字节数组 *<span> @param</span> $str 目标字符串 *<span> @return</span> 一个String类型的数据 */</span><span>public</span><span>static</span><span><span>function</span><span>toStr</span><span>(<span>$bytes</span>)</span> {</span><span>$str</span> = <span>''</span>; <span>foreach</span>(<span>$bytes</span><span>as</span><span>$ch</span>) { <span>$str</span> .= chr(<span>$ch</span>); } <span>return</span><span>$str</span>; } <span>/** * 转换一个int为byte数组 *<span> @param</span> $byt 目标byte数组 *<span> @param</span> $val 需要转换的字符串 * */</span><span>public</span><span>static</span><span><span>function</span><span>integerToBytes</span><span>(<span>$val</span>)</span> {</span><span>$byt</span> = <span>array</span>(); <span>$byt</span>[<span>0</span>] = (<span>$val</span> & <span>0xff</span>); <span>$byt</span>[<span>1</span>] = (<span>$val</span> >> <span>8</span> & <span>0xff</span>); <span>$byt</span>[<span>2</span>] = (<span>$val</span> >> <span>16</span> & <span>0xff</span>); <span>$byt</span>[<span>3</span>] = (<span>$val</span> >> <span>24</span> & <span>0xff</span>); <span>return</span><span>$byt</span>; } <span>/** * 从字节数组中指定的位置读取一个Integer类型的数据 *<span> @param</span> $bytes 字节数组 *<span> @param</span> $position 指定的开始位置 *<span> @return</span> 一个Integer类型的数据 */</span><span>public</span><span>static</span><span><span>function</span><span>bytesToInteger</span><span>(<span>$bytes</span>, <span>$position</span>)</span> {</span><span>$val</span> = <span>0</span>; <span>$val</span> = <span>$bytes</span>[<span>$position</span> + <span>3</span>] & <span>0xff</span>; <span>$val</span> <<= <span>8</span>; <span>$val</span> |= <span>$bytes</span>[<span>$position</span> + <span>2</span>] & <span>0xff</span>; <span>$val</span> <<= <span>8</span>; <span>$val</span> |= <span>$bytes</span>[<span>$position</span> + <span>1</span>] & <span>0xff</span>; <span>$val</span> <<= <span>8</span>; <span>$val</span> |= <span>$bytes</span>[<span>$position</span>] & <span>0xff</span>; <span>return</span><span>$val</span>; } <span>/** * 转换一个shor字符串为byte数组 *<span> @param</span> $byt 目标byte数组 *<span> @param</span> $val 需要转换的字符串 * */</span><span>public</span><span>static</span><span><span>function</span><span>shortToBytes</span><span>(<span>$val</span>)</span> {</span><span>$byt</span> = <span>array</span>(); <span>$byt</span>[<span>0</span>] = (<span>$val</span> & <span>0xff</span>); <span>$byt</span>[<span>1</span>] = (<span>$val</span> >> <span>8</span> & <span>0xff</span>); <span>return</span><span>$byt</span>; } <span>/** * 从字节数组中指定的位置读取一个Short类型的数据。 *<span> @param</span> $bytes 字节数组 *<span> @param</span> $position 指定的开始位置 *<span> @return</span> 一个Short类型的数据 */</span><span>public</span><span>static</span><span><span>function</span><span>bytesToShort</span><span>(<span>$bytes</span>, <span>$position</span>)</span> {</span><span>$val</span> = <span>0</span>; <span>$val</span> = <span>$bytes</span>[<span>$position</span> + <span>1</span>] & <span>0xFF</span>; <span>$val</span> = <span>$val</span> << <span>8</span>; <span>$val</span> |= <span>$bytes</span>[<span>$position</span>] & <span>0xFF</span>; <span>return</span><span>$val</span>; } } <span>?></span></span></code>
以上就介紹了PHP字串與位元組轉換範例,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

這適用於想要執行手動啟動的用戶。如果需要協助,為您執行此操作的工具,然後檢查此處。我們可以將手動啟動過程分為兩部分。 1-從現成的批次檔確保已啟用網路。以管理員身分開啟WindowsPowershell,然後輸入以下內容以給予指令的順序列出指令。輸入金鑰,(替換為金鑰從上面的清單)使用以下指令<key>slmgr/ipk<key>從這裡下載通用票券並提取下載的檔案。現在在Powershell中輸入以下程式碼(Get-ItemProper

H5中如何靈活運用position屬性在H5開發中,常會涉及到元素的定位和佈局問題。這時候,CSS的position屬性就會發揮作用。 position屬性可以控制元素在頁面中的定位方式,包括相對定位(relative)、絕對定位(absolute)、固定定位(fixed)和黏附定位(sticky)。本文將詳細介紹在H5開發中如何靈活運用position屬性

CSS版面配置屬性最佳化技巧:positionsticky和flexbox在網頁開發中,版面是一個非常重要的面向。良好的佈局結構可以提高使用者體驗,使頁面更加美觀和易於導航。而CSS佈局屬性則是達成此目標的關鍵。在本文中,我將介紹兩種常用的CSS佈局屬性最佳化技巧:positionsticky和flexbox,並提供特定的程式碼範例。一、positions

html把div放在底部的方法:1.使用position屬性將div標籤相對於瀏覽器視窗進行定位,語法「div{position:fixed;}」;2、設定到底部距離為0來把div永遠放置於頁面底部,語法“div{bottom:0;}”。

在Go語言中,bytes套件是一個用於操作位元組類型的套件,並且它包含了許多有用的方法,例如Split()方法。不過,在使用Split()方法時,你可能會遇到「undefined:bytes.Split」的錯誤。這種錯誤通常是由於Go版本不相容或缺少必要的依賴庫等原因引起的。這篇文章將介紹一些解決這種錯誤的方法。方法一:升級Go版本如

在H5中使用position屬性可以透過CSS控制元素的定位方式:1、相對定位relative,語法為「style="position: relative;」;2、絕對定位absolute,語法為「style="position: absolute; 」;3、固定定位fixed,語法為「style="position: fixed;」等等。

position屬性取值有static、relative、absolute、fixed和sticky等。詳細介紹:1、static是position屬性的預設值,表示元素按照正常的文檔流進行佈局,不進行特殊的定位,元素的位置由其在HTML文檔中的先後順序決定,無法透過top、right、bottom和left屬性進行調整;2、relative是相對定位等等。

css清除position的方法:1、使用static屬性,可以設定為static來清除position屬性;2、使用inherit屬性,可以清除元素的position屬性,並繼承父元素的position屬性;3、使用unset屬性,將屬性恢復為其預設值,並清除元素的position屬性;4、使用!important規則,將覆蓋其他樣式規則,並清除position屬性等等。
