最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP實(shí)現(xiàn)十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換相關(guān)函數(shù)用法分析

 更新時(shí)間:2017年04月25日 12:08:11   作者:南淮_  
這篇文章主要介紹了PHP實(shí)現(xiàn)十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換相關(guān)函數(shù)用法,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了php各種常見的進(jìn)制轉(zhuǎn)換函數(shù)功能、參數(shù)、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了PHP實(shí)現(xiàn)十進(jìn)制、二進(jìn)制、八進(jìn)制和十六進(jìn)制轉(zhuǎn)換相關(guān)函數(shù)用法。分享給大家供大家參考,具體如下:

1.二進(jìn)制:

1.1.二進(jìn)制轉(zhuǎn)十進(jìn)制:

函數(shù):bindec(string $binary_string)

@param $binary_string 參數(shù)表示所要轉(zhuǎn)換的二進(jìn)制字符串。
@return  返回與$binary_string參數(shù)所表示的二進(jìn)制數(shù)的十進(jìn)制數(shù)等價(jià)值。

函數(shù)說明:

bindec()將一個(gè)二進(jìn)制數(shù)轉(zhuǎn)換成Integer類型或者出于大小的需要,轉(zhuǎn)換為float類型。
bindec()將所有的$binary_string值解釋為無符號整數(shù)。這是因?yàn)閎indec()函數(shù)將其最高有效位視為數(shù)量級而非符號位?!炯醋罡呶?或1并不被bindec()表示為+或-而是按值來表示1就是1,0就是0】

注意:參數(shù)必須為字符串,使用其他的數(shù)據(jù)類型會導(dǎo)致不可預(yù)知的結(jié)果。

范例:

<?php
  echo bindec('10010') . "\n";
  echo bindec('00110') . "\n";
  echo bindec('1111') . "\n";

以上程序語句會依次輸出:18,6,15

1.2.二進(jìn)制轉(zhuǎn)十六進(jìn)制

函數(shù):bin2hex(string $str)

@param  $str 將要轉(zhuǎn)換的ASCII字符的字符串。
@return  返回轉(zhuǎn)換字符串的十六進(jìn)制值。

函數(shù)說明:

bin2hex() 函數(shù)把 ASCII 字符的字符串轉(zhuǎn)換為十六進(jìn)制值。字符串可通過使用 pack() 函數(shù)再轉(zhuǎn)換回去。
bin2hex() 函數(shù)轉(zhuǎn)換使用字節(jié)方式,高四位字優(yōu)先。

范例:

(1)bin2hex()轉(zhuǎn)換‘chengdu'為十六進(jìn)制值:

<?php
  $str = bin2hex('chengdu');
  echo $str;

以上程序語句會輸出:6368656e676475

(2)把一個(gè)字符串值從二進(jìn)制轉(zhuǎn)換為十六進(jìn)制,再轉(zhuǎn)換回去:

<?php
  $str = 'chengdu';
  echo bin2hex($str) . "<br/>";
  echo pack("H*", bin2hex($str)) . "<br/>";

以上程序語句依次輸出:6368656e676475, chengdu

2.八進(jìn)制:

2.1.八進(jìn)制轉(zhuǎn)十進(jìn)制:

函數(shù):octdec(string $octal_string)

@param  $octal_string 參數(shù)表示將要轉(zhuǎn)換的八進(jìn)制字符串。
@return   返回$octal_string參數(shù)所表示的八進(jìn)制數(shù)的十進(jìn)制等值。

函數(shù)說明:

octdec()可以處理Integer大數(shù)字,但在這種情況下它會返回float類型。

范例:

<?php
  echo octdec( '010' ) . "\n";
  echo octdec( decoct( 45 ) );

以上程序語句會輸出:8, 45

3.十進(jìn)制:

3.1.十進(jìn)制轉(zhuǎn)二進(jìn)制:

函數(shù):decbin(int $number)

@param  $number  所要轉(zhuǎn)換的十進(jìn)制數(shù)字,所能轉(zhuǎn)換的最大數(shù)值為十進(jìn)制的4294967295,其decbin結(jié)果為 32 個(gè) 1 的字符串。
@return   返回十進(jìn)制數(shù)字轉(zhuǎn)換后的二進(jìn)制字符串。

函數(shù)說明:

decbin()函數(shù)所能轉(zhuǎn)換的最大十進(jìn)制數(shù)值為4294967295,其結(jié)果為 32 個(gè) 1 的字符串。

范例:

<?php
  echo decbin ( 10 ) . "\n";
  echo decbin ( 50 );

以上程序語句會輸出:1010, 110010

3.2.十進(jìn)制轉(zhuǎn)八進(jìn)制:

函數(shù):decoct(int $number)

@param  $number 所要轉(zhuǎn)換的十進(jìn)制數(shù)字,所能轉(zhuǎn)換的最大數(shù)值是十進(jìn)制的4294967295,其decoct()結(jié)果為 "37777777777"。
@return   返回一個(gè)包含有給定$number參數(shù)的八進(jìn)制表示的字符串。

函數(shù)說明:

decoct()函數(shù)所能轉(zhuǎn)換的最大十進(jìn)制數(shù)數(shù)值為4294967295,其結(jié)果為 "37777777777"。

范例:

<?php
  echo decoct ( 10 ) . "\n" ;
  echo decoct ( 50 );

以上程序語句會依次輸出:12, 62

3.3.十進(jìn)制轉(zhuǎn)十六進(jìn)制:

函數(shù):dechex(int $number)

@param $number 將要轉(zhuǎn)換的十進(jìn)制數(shù)字。
@return   返回一個(gè)包含給定$number參數(shù)的十六進(jìn)制表示的字符串。

函數(shù)說明:

dechex()函數(shù)所能轉(zhuǎn)換的十進(jìn)制的最大數(shù)值是:PHP_INT_MAX*2 +/- 1,在32位系統(tǒng)上是十進(jìn)制的4294967295,其dechex()的結(jié)果為ffffffff。

注意:PHP的Integer類型是有符號的,但是dechex()只能處理無符號整數(shù),負(fù)整數(shù)會以無符號來處理。

范例:

<?php
  echo dechex ( 10 ) . "\n" ;
  echo dechex ( 58 );

以上程序語句會依次輸出:a, 3a

4.十六進(jìn)制:

4.1.十六進(jìn)制轉(zhuǎn)二進(jìn)制:

函數(shù):hex2bin(string $data);   轉(zhuǎn)換十六進(jìn)制字符串為二進(jìn)制字符串

@param  $data  使用十六進(jìn)制表示的數(shù)據(jù)。
@return    返回給定數(shù)據(jù)的二進(jìn)制字符串或者在失敗時(shí)返回FALSE。

函數(shù)說明:

如果輸入的十六進(jìn)制字符串是奇數(shù)長度或者是無效的十六進(jìn)制字符串,則會拋出一個(gè)E_WARNING級別的錯誤。

范例:

<?php
  $hex = hex2bin ( "6368656e67206475" );
  echo $hex;

以上程序語句會輸出:cheng du

4.2十六進(jìn)制轉(zhuǎn)十進(jìn)制:

函數(shù):hexdec(string $hex_string);   轉(zhuǎn)換十六進(jìn)制字符串為二進(jìn)制字符串

@param  $hex_string 將要轉(zhuǎn)換的十六進(jìn)制的字符串。
@return    返回與$hex_string參數(shù)所表示的十六進(jìn)制數(shù)等值的十進(jìn)制數(shù)。

函數(shù)說明:

hexdec()會忽略它遇到的任意非十六進(jìn)制的字符。

PHP 4.1.0 開始,該函數(shù)可以處理 integer大數(shù)字,這種情況下,它會返回float類型。

范例:

<?php
  var_dump ( hexdec ( "See" ));
  var_dump ( hexdec ( "ee" ));
  // 上面兩個(gè)都輸出: "int(238)"
  var_dump ( hexdec ( "that" )); // 輸出"int(10)"
  var_dump ( hexdec ( "a0" )); // 輸出"int(160)"
  //通過上面的例子可以看出來:hexdec()會忽略它遇到的任意非十六進(jìn)制的字符。

5.任意進(jìn)制轉(zhuǎn)換的base_convert() 函數(shù):

函數(shù):base_convert(string $number, int $frombase, int $tobase)

@param $number 將要轉(zhuǎn)換的的數(shù)。
@param  $frombase參數(shù)$number的進(jìn)制。
@param  $tobase 將要轉(zhuǎn)換成的進(jìn)制。
@return   返回一個(gè)包含$number以$tobase進(jìn)制表示的字符串。

函數(shù)說明:

$number本身的進(jìn)制由$formbase來指定。
$formbase和$tobase都只能是2和36(包括2和36)之間的整數(shù)值。

注意:由于使用內(nèi)部的 "double" 或 "float" 類型,base_convert()的操作可能會導(dǎo)致大數(shù)值中的精度丟失。

范例:

<?php
  $hexadecimal = 'A37334' ;
  echo base_convert ( $hexadecimal , 16 , 2 );
  //print 101000110111001100110100
  echo base_convert ( $hexadecimal , 16 , a);
  //print 10711860

PS:這里再為大家推薦幾款計(jì)算與轉(zhuǎn)換工具供大家參考使用:

在線任意進(jìn)制轉(zhuǎn)換工具:
http://tools.jb51.net/transcoding/hexconvert

科學(xué)計(jì)算器在線使用_高級計(jì)算器在線計(jì)算:
http://tools.jb51.net/jisuanqi/jsqkexue

在線計(jì)算器_標(biāo)準(zhǔn)計(jì)算器:
http://tools.jb51.net/jisuanqi/jsq

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》、《PHP運(yùn)算與運(yùn)算符用法總結(jié)》、《php字符串(string)用法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • php的POSIX 函數(shù)以及進(jìn)程測試的深入分析

    php的POSIX 函數(shù)以及進(jìn)程測試的深入分析

    本篇文章是對php的POSIX函數(shù)以及進(jìn)程測試進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • php頁面防重復(fù)提交方法總結(jié)

    php頁面防重復(fù)提交方法總結(jié)

    有時(shí)候我們的程序執(zhí)行比較慢,而且我們頁面也不怎么友好,沒什么提示信息。操作人員以為沒有點(diǎn)擊提交按鈕,就會再一次點(diǎn)擊提交。這會導(dǎo)致很多問題出現(xiàn)。下面介紹三種防重復(fù)提交的方法
    2013-11-11
  • php使用post數(shù)組的鍵值創(chuàng)建同名變量并賦值的方法

    php使用post數(shù)組的鍵值創(chuàng)建同名變量并賦值的方法

    這篇文章主要介紹了php使用post數(shù)組的鍵值創(chuàng)建同名變量并賦值的方法,涉及php操作數(shù)組的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 叫你如何修改Nginx與PHP的文件上傳大小限制

    叫你如何修改Nginx與PHP的文件上傳大小限制

    對于nginx+php的一些網(wǎng)站,上傳文件大小會受到多個(gè)方面的限制,一個(gè)是nginx本身的限制,限制了客戶端上傳文件的大小,一個(gè)是php.ini文件中默認(rèn)了多個(gè)地方的設(shè)置。下面我們來看看如何修改這些限制
    2014-09-09
  • PHP form 表單傳參明細(xì)研究

    PHP form 表單傳參明細(xì)研究

    最近一段時(shí)間一直在做基于uchome的二次開發(fā)網(wǎng)站,因uchome中的很多跳轉(zhuǎn)都是通過參數(shù)do來控制的,一直對這種機(jī)制不是十分的明細(xì),總有一種霧里看花的感覺。
    2009-07-07
  • PHP把MSSQL數(shù)據(jù)導(dǎo)入到MYSQL的方法

    PHP把MSSQL數(shù)據(jù)導(dǎo)入到MYSQL的方法

    這篇文章主要介紹了PHP把MSSQL數(shù)據(jù)導(dǎo)入到MYSQL的方法,分別列舉了兩個(gè)實(shí)例實(shí)現(xiàn)將MSSQL數(shù)據(jù)導(dǎo)入到MYSQL的功能,是非常實(shí)用的技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2014-12-12
  • PHP圖片加水印實(shí)現(xiàn)方法

    PHP圖片加水印實(shí)現(xiàn)方法

    這篇文章主要介紹了PHP圖片加水印實(shí)現(xiàn)方法,涉及php圖片的讀取、水印處理及圖形生成等操作技巧,需要的朋友可以參考下
    2016-05-05
  • Centos7安裝swoole擴(kuò)展操作示例

    Centos7安裝swoole擴(kuò)展操作示例

    這篇文章主要介紹了Centos7安裝swoole擴(kuò)展操作,詳細(xì)分析了Centos7安裝swoole擴(kuò)展的具體步驟、相關(guān)操作命令與使用注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • PHP獲取中國時(shí)間(上海時(shí)區(qū)時(shí)間)及美國時(shí)間的方法

    PHP獲取中國時(shí)間(上海時(shí)區(qū)時(shí)間)及美國時(shí)間的方法

    這篇文章主要介紹了PHP獲取中國時(shí)間(上海時(shí)區(qū)時(shí)間)及美國時(shí)間的方法,涉及php時(shí)區(qū)選擇及日期時(shí)間相關(guān)操作技巧,非常簡單實(shí)用,需要的朋友可以參考下
    2017-02-02
  • php 獲取今日、昨日、上周、本月的起始時(shí)間戳和結(jié)束時(shí)間戳的方法

    php 獲取今日、昨日、上周、本月的起始時(shí)間戳和結(jié)束時(shí)間戳的方法

    php 獲取今日、昨日、上周、本月的起始時(shí)間戳和結(jié)束時(shí)間戳的方法,主要使用到了 php 的時(shí)間函數(shù) mktime,下面首先還是直奔主題以示例說明如何使用 mktime 獲取今日、昨日、上周、本月的起始時(shí)間戳和結(jié)束時(shí)間戳,然后在介紹一下 mktime 函數(shù)作用和用法
    2013-09-09

最新評論

夏邑县| 繁昌县| 息烽县| 玛沁县| 蒲江县| 灵璧县| 柯坪县| 灵川县| 陈巴尔虎旗| 宜都市| 乐山市| 会泽县| 南平市| 泽库县| 夏河县| 舒兰市| 泗水县| 永德县| 通许县| 桐城市| 阜平县| 宜黄县| 轮台县| 呼和浩特市| 花垣县| 西平县| 北票市| 启东市| 卢氏县| 石狮市| 广丰县| 枞阳县| 防城港市| 开封县| 古丈县| 东乡县| 吴江市| 饶阳县| 垫江县| 珠海市| 金坛市|