㈠ php如何輸出0-9任選可重復3個數字所有組合
$res=array();
for($i=0;$i<10;$i++)
{
for($j=0;$j<10;$j++)
{
for($k=0;$k<10;$k++)
{
$item=$temp=[$i,$j,$k];
sort($temp,1);//把每項當做數值升序
$temp=implode('',$temp);//轉字元串
if(!in_array($temp,$res))
$res[]=implode('',$item);
}
}
}
㈡ php里怎樣將多個數字進行相加依次相加,如1-10全部加起來總和
等差數列?
//1-n
functiona(n){
return(1+n)*n/2;
}
㈢ 如何用phpfor循環生成5位,數字字母組合,永不不重復
如果你希望永不重復 建議採用 PHP GUID
GUID是什麼
GUID: 即Globally Unique Identifier(全球唯一標識符) 也稱作 UUID(Universally Unique IDentifier) 。 GUID是一個通過特定演算法產生的二進制長度為128位的數字標識符,用於指示產品的唯一性。GUID 主要用於在擁有多個節點、多台計算機的網路或系統中,分配必須具有唯一性的標識符。
PHP中並不提供GUID的內部實現。為此我們可以自己寫演算法實現。代碼片段如下:
function create_guid() {
$charid = strtoupper(md5(uniqid(mt_rand(), true)));
$hyphen = chr(45);// "-"
$uuid = chr(123)// "{"
.substr($charid, 0, 8).$hyphen
.substr($charid, 8, 4).$hyphen
.substr($charid,12, 4).$hyphen
.substr($charid,16, 4).$hyphen
.substr($charid,20,12)
.chr(125);// "}"
return $uuid;
}
㈣ 關於php 類似md5那種加密出來全小寫混合數字但是可以解密的函數有沒有
可以使用字元串到16進制和16進制到字元串實現
<?php
echostr_encode("哈123abc-=/*-+=");//顯示:
echostr_decode("");//顯示:哈123abc-=/*-+=
functionstr_encode($string){//字元串轉十六進制
$hex="";
for($i=0;$i<strlen($string);$i++)
$hex.=dechex(ord($string[$i]));
$hex=strtoupper($hex);
return$hex;
}
functionstr_decode($hex){//十六進制轉字元串
$string="";
for($i=0;$i<strlen($hex)-1;$i+=2)
$string.=chr(hexdec($hex[$i].$hex[$i+1]));
return$string;
}
㈤ php:如何生成隨機的唯一字母數字字元串
1. 自己寫代碼產生隨機的數字和字母組合,每產生1個去資料庫查詢該隨機碼是否已存在,如果已存在,則重新產生,直到不重復為止。
缺點:產生速度慢,還要查詢資料庫,當數據量大的時候,可能重復的機率會比較高,要查詢多次資料庫.
2. guid,該方法應該是用的比較多的。
優點:使用簡單方便,不用自己編寫額外的代碼
缺點:佔用資料庫空間相對較大,特別是根據guid查詢速度比較慢(畢竟是字元串)。
3. 主鍵+隨機碼的方式,我們產生的隨機碼保存到資料庫肯定會有個主鍵,用該主鍵+隨機字元來組合。產生步驟:
1) 先從id生成器中獲取id,比如是155.
2)填充成固定位數(比如8位)的字元串(不夠位數的左邊填0,超過位數直接使用該數字),得到:00000155
3)在每個數字後面隨機插入1個字母或其它非數字元號,得到:0A0F0R0Y0H1K5L5M
這樣就可以得到1個隨機的唯一的邀請碼了。
優點:使用也比較簡單,不用查詢資料庫。最大的優點是查詢的時候,可以根據邀請碼直接得到主鍵id,然後根據id去資料庫查詢(速度很快),再比較查詢出來的邀請碼和用戶提交的邀請碼是否一致。
缺點:需要使用id產生器,如果主鍵是資料庫自增長的就不太好用(需要先插入資料庫獲取id,再更新邀請碼)。
4. 有時候產品經理說,我要求邀請碼都是數字的。把方法3變通下就可以實現唯一的純數字隨機碼了。
1) 獲取id: 155
2) 轉換成8進制:233
3) 轉為字元串,並在後面加'9'字元:2339
4)在後面隨機產生若干個隨機數字字元:2003967524987
轉為8進制後就不會出現9這個字元,然後在後面加個'9',這樣就能確定唯一性。最後在後面產生一些隨機數字就可以。
㈥ php 兩個普通數組合並為一個普通數組
php兩個普通數組合並為一個普通數組可以參考下面的代碼:
<?php
$a=array(1,2,3,4,5);
$b=array(6,7,8,9,10);
$c=array_merge($a,$b);
print_r($c);
?>
註:當被合並的數組中有一個數組為空時,可能會出現合並後的數組也為空。
(6)php數字組合擴展閱讀:
PHP常用函數
printf()函數輸出格式化的字元串。
print()函數輸出一個或多個字元串。
parse_str()函數把查詢字元串解析到變數中。
ord() 函數返回字元串第一個字元的 ASCII 值。
number_format()函數通過千位分組來格式化數字。
nl2br()函數在字元串中的每個新行 ( ) 之前插入 HTML 換行符 (<br />)。
nl_langinfo()函數返回指定的本地信息。