首頁  >  文章  >  後端開發  >  PHP數學函數實作三:隨機函數rand()的巧妙運用

PHP數學函數實作三:隨機函數rand()的巧妙運用

藏色散人
藏色散人原創
2021-07-28 11:31:403186瀏覽

在《PHP數學函數實踐二:round()函數的全能運用》中,我們透過具體的程式碼範例為大家介紹了PHP數學函數之round的作用(對浮點數進行四捨五入)及使用方法,簡單易懂。

本篇我們繼續介紹PHP常用數學函數rand的使用,為什麼說是常用呢?想必在PHP開發過程中,隨機數的使用大家都比較常見吧,那麼rand函數的作用就是產生隨機整數。

老傳統了,我們從一個具體問題入手,「請你寫一個PHP腳本來產生隨機的11個字元的字母和數字字串」。

給大家3秒,來想想該題的解決想法

1~

2~

##3~

#太簡單啦!

首先二話不說,建立一個PHP範例檔案demo.php


PHP數學函數實作三:隨機函數rand()的巧妙運用

#具體程式碼如下:

<?php
$x = rand(10e12, 10e16);
echo base_convert($x, 10, 36)."\n";

上述程式碼中參數10e12表示傳回的最小數,參數10e16表示傳回的最大數。然後將產生的隨機整數$x透過base_convert函數進行進位之間的轉換。

我們執行看看輸出結果是不是隨機的11個字元的字母和數字字串?

輸出結果:

ptkkl0hphh9

再刷新一下,變成了

m71otm3mmma

OK,解決問題啦!

函數小結:

rand()函數語法「rand();」或「rand(min,max);」。如果想要一個介於 10 和 100 之間(包括 10 和 100)的隨機整數,可用 rand (10,100)。

base_convert()函數語法“base_convert(number,frombase,tobase);”,裡面的參數分別表示:要轉換的數字、規定數字原來的進位和要轉換的進位。 (介於2 和36之間包括2和36,高於十進制的數字以字母a-z表示,例如a表示10,b表示11以及z表示35)

註:mt_rand()函數是產生隨機值的更好選擇,返回結果的速度是rand() 函數的4 倍,這個我們在後續文章給大家介紹,請大家多關注呀~

PHP中文網平台有非常多的視頻教學資源,歡迎大家學習:

https://www.php.cn/course/list/29/type/2.html#

以上是PHP數學函數實作三:隨機函數rand()的巧妙運用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn