php字元串加密成全是數字(php 數字轉字元)

本文目錄一覽:

php 字元串轉換成數字

1.強制類型轉換方式

$foo = “1”; // $foo 是字元串類型

$bar = (int)$foo; // $bar 是整型

2.內置函數方式

$foo = “1”; // $foo 是字元串類型

$bar = intval($foo); // $bar 是整型

3.格式化字元串方式

$foo = “1”; // $foo 是字元串類型

$bar = sprintf(“%d”, $foo); // $bar 是字元串類型

關於php 類似md5那種加密出來全小寫混合數字但是可以解密的函數有沒有

可以使用字元串到16進位和16進位到字元串實現

?php

echo str_encode(“哈123abc-=/*-+=”);//顯示:B9FE3132336162632D3D2F2A2D2B3D

echo str_decode(“B9FE3132336162632D3D2F2A2D2B3D”);//顯示:哈123abc-=/*-+=

function str_encode($string){ //字元串轉十六進位

$hex=””;

for($i=0;$istrlen($string);$i++)

$hex.=dechex(ord($string[$i]));

$hex=strtoupper($hex);

return $hex;

}   

 

function str_decode($hex){//十六進位轉字元串   

$string=””; 

for($i=0;$istrlen($hex)-1;$i+=2)

$string.=chr(hexdec($hex[$i].$hex[$i+1]));

return  $string;

}

php 怎麼將字元轉成數字

第一種轉換方式: 強制轉換;

代碼:

結果:

第二種轉換方式:轉換函數,intval()、floatval()、strval();

代碼:

結果:

第三種轉換方式:通用類型轉換函數settype(mixed var,string type);

代碼:

結果:

擴展資料:

PHP的數據類型轉換屬於強制轉換,允許轉換的PHP數據類型有:

(int)、(integer):轉換成整形;

(float)、(double)、(real):轉換成浮點型;

(string):轉換成字元串;

(bool)、(boolean):轉換成布爾類型;

(array):轉換成數組;

(object):轉換成對象。

參考資料:PHP中文網–類型轉換的判別

php加密解密問題,一道10000+公司的phper,大公司的php面試題。

?php

/**

 * 加密解密類

 * 該演算法僅支持加密數字。比較適用於資料庫中id欄位的加密解密,以及根據數字顯示url的加密。

 * @author 深秋的竹子

 * @version alpha

 * @加密原則 標記長度 + 補位 + 數字替換

 * @加密步驟:

 * 將a-z,A-Z,0-9 62個字元打亂,取前M(數字最大的位數)位作為 標記長度字元串,取第M+1 到第M+10位為數字替換字元串,剩餘的為補位字元串

 * 1.計算數字長度n,取亂碼的第n位作為標記長度。

 * 2.計算補位的長度,加密串的長度N -1 – n 為補位的長度。根據指定的演算法得到補位字元串。

 * 3.根據數字替換字元串替換數字,得到數字加密字元串。

 * 標記長度字元 + 補位字元串 + 數字加密字元串 = 加密串

 * Usage:

 *   $obj = new XDeode(9);

 *   $e_txt = $obj-encode(123);

 *   echo $e_txt.’br/’;

 *   echo $key-decode($e_txt);

 */

class XDeode{

  private $strbase = “Flpvf70CsakVjqgeWUPXQxSyJizmNH6B1u3b8cAEKwTd54nRtZOMDhoG2YLrI”;

  private $key,$length,$codelen,$codenums,$codeext;

  function __construct($length = 9,$key = 2543.5415412812){

    $this-key = $key;

    $this-length = $length;

    $this-codelen = substr($this-strbase,0,$this-length);

    $this-codenums = substr($this-strbase,$this-length,10);

    $this-codeext = substr($this-strbase,$this-length + 10);

  }

  function encode($nums){

    $rtn = “”;

    $numslen = strlen($nums);

    //密文第一位標記數字的長度

    $begin = substr($this-codelen,$numslen – 1,1);

    //密文的擴展位

    $extlen = $this-length – $numslen – 1;

    $temp = str_replace(‘.’, ”, $nums / $this-key);

    $temp = substr($temp,-$extlen);

    $arrextTemp = str_split($this-codeext);

    $arrext = str_split($temp);

    foreach ($arrext as $v) {

      $rtn .= $arrextTemp[$v];

    }

    $arrnumsTemp = str_split($this-codenums);

    $arrnums = str_split($nums);

    foreach ($arrnums as $v) {

      $rtn .= $arrnumsTemp[$v];

    }

    return $begin.$rtn;

  }

  function decode($code){

    $begin = substr($code,0,1);

    $rtn = ”;

    $len = strpos($this-codelen,$begin);

    if($len!== false){

      $len++;

      $arrnums = str_split(substr($code,-$len));

      foreach ($arrnums as $v) {

        $rtn .= strpos($this-codenums,$v);

      }

    }

    return $rtn;

  }

}

一個PHP針對數字的加密解密類

你可以參照這個來寫

請教一個問題,使用什麼加密方式可以把一個字元串變成一串純數字

字元串中字元的種類,按照ASCII碼編碼來說有256種,而普通數字每位只有10種,那麼編碼後的數字字元串必然要比編碼前長,比如說是之前的3倍長。

最簡單的方法是直接將每個字元的ASCII碼用ASCII碼取值寫出來,比如大寫字母A的ASCII碼是65,那麼就寫成065,3個一組表示一個字元;再想加密可以在這個3位數上進行運算,採用比如全都加一個數之類的方法。

PHP怎麼加密後是一串數字

應該是自己編寫的,,這個也很簡單,比如:要加密的數是123,加密演算法是:

INT((A*5-A/4)*135+A-A*6),當然以上只是我自己寫的一個,具體他是怎麼寫的要推算,能明白我的意思嗎?

原創文章,作者:TVDLT,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/324553.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
TVDLT的頭像TVDLT
上一篇 2025-01-13 13:23
下一篇 2025-01-13 13:23

相關推薦

  • 英語年齡用連字元號(Hyphenation for English Age)

    英語年齡通常使用連字元號表示,比如 “five-year-old boy”。本文將從多個方面探討英語年齡的連字元使用問題。 一、英語年齡的表達方式 英語中表…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • Python字元串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字元串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字元串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python循環符合要求數字求和

    這篇文章將詳細介紹如何通過Python循環符合要求數字求和。如果你想用Python求和但又不想手動輸入數字,那麼本文將是一個不錯的選擇。 一、使用while循環實現求和 sum =…

    編程 2025-04-29
  • Python中將字元串轉化為浮點數

    本文將介紹在Python中將字元串轉化為浮點數的常用方法。在介紹方法之前,我們先來思考一下這個問題應該如何解決。 一、eval函數 在Python中,最簡單、最常用的將字元串轉化為…

    編程 2025-04-29
  • Python字元轉列表指南

    Python是一個極為流行的腳本語言,在數據處理、數據分析、人工智慧等領域廣泛應用。在很多場景下需要將字元串轉換為列表,以便於操作和處理,本篇文章將從多個方面對Python字元轉列…

    編程 2025-04-29
  • Java判斷字元串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字元串中是否存在多個指定字元: 一、字元串遍歷 字元串是Java編程中非常重要的一種數據類型。要判斷字元串中是否存在多個指定字元…

    編程 2025-04-29
  • Python學習筆記:去除字元串最後一個字元的方法

    本文將從多個方面詳細闡述如何通過Python去除字元串最後一個字元,包括使用切片、pop()、刪除、替換等方法來實現。 一、字元串切片 在Python中,可以通過字元串切片的方式來…

    編程 2025-04-29
  • Python基本數字類型

    本文將介紹Python中基本數字類型,包括整型、布爾型、浮點型、複數型,並提供相應的代碼示例以便讀者更好的理解。 一、整型 整型即整數類型,Python中的整型沒有大小限制,所以可…

    編程 2025-04-29
  • Python數字求和怎麼寫

    在Python中實現數字求和非常簡單,下面將從多個方面對Python數字求和的實現方法做詳細的闡述。 一、直接使用「+」符號進行求和 a = 10 b = 20 c = a + b…

    編程 2025-04-29

發表回復

登錄後才能評論