• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            colorful

            zc qq:1337220912

             

            PHP的ntohl網絡字節序函數及相關知識

            http://n3yang.com/archives/2011/12/16/php-function-ntohl/
            http://www.w3school.com.cn/php/func_misc_unpack.asp    // php unpack 函數


            最近項目中使用到了PHP與C服務器的socket通信,在做數據轉換的時候,PHP沒有提供對應將網絡字節序和機器字節序相互轉換的程序,但是根據函數的意義,我們可以做相應的轉換來實現這一函數:

            1
            2
            3
            4
            function ntohl($str){
                $arr = unpack('I', pack('N', $str));
                return $arr[1];
            }

            函數的意義
            程序的作用是將網絡字節序和機器字節序進行相互轉換。在C/C++、Python、Delphi中都提供了相應的函數“ntohl”和“htonl”,如果是short類型就是“ntohs”和“htons”。下面是這些函數的意義:

            ntohl()--"Network to Host Long" htonl()--"Host to Network Long" htons()--"Host to Network Short" ntohs()--"Network to Host Short"

            什么是主機字節序
            不同的機器字節序不相同,這與使用的CPU有關。不同的CPU在處理高位字節時所存儲的順序是不同的。
            例如Intel x86結構下, short型數0×1234表示為34 12, int型數0×12345678表示為78 56 34 12
            如IBM power PC結構下, short型數0×1234表示為12 34, int型數0×12345678表示為12 34 56 78

            網絡字節序
            正是由于每個主機的處理順序有可能不同,所以在網絡協議中規定數據從高到低順序存儲,目的是在不同架構的主機中可以正常通信,避免兼容性問題。

            posted on 2013-07-29 14:49 多彩人生 閱讀(702) 評論(0)  編輯 收藏 引用 所屬分類: linux program

            導航

            統計

            常用鏈接

            留言簿(3)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久青青草原亚洲av无码app| 亚洲国产成人久久综合区| 国产精品成人久久久| 久久精品桃花综合| 久久精品中文闷骚内射| 婷婷久久综合九色综合98| 久久有码中文字幕| 久久精品国产亚洲av高清漫画| 97久久精品人人澡人人爽| 国产精久久一区二区三区| 亚洲精品乱码久久久久久蜜桃| 国内精品伊人久久久久av一坑| 日韩欧美亚洲综合久久影院Ds| 日韩精品无码久久久久久| 久久成人18免费网站| 亚洲av成人无码久久精品| 一级A毛片免费观看久久精品| 久久99精品久久久久久 | 国色天香久久久久久久小说| 国产精品久久久久久一区二区三区| 性做久久久久久久久老女人| 国产精品一区二区久久| 亚洲午夜久久久久妓女影院 | 亚洲综合日韩久久成人AV| 久久久无码精品午夜| 亚洲国产精品婷婷久久| 久久久久亚洲AV片无码下载蜜桃| 亚洲午夜无码AV毛片久久| 久久国产免费直播| 久久国产精品成人免费| 国产精品久久久久9999| 久久久久久久久无码精品亚洲日韩| 伊人久久大香线蕉精品不卡 | 欧美国产成人久久精品| 国产福利电影一区二区三区久久老子无码午夜伦不 | 久久天天躁狠狠躁夜夜96流白浆| 久久久久亚洲精品日久生情| 一级做a爰片久久毛片毛片| 久久久久亚洲av毛片大| 性做久久久久久久久| 欧美久久一区二区三区|