[精讚] [會員登入]
1620

[PHP] 隨機產生一個顏色字串

讓PHP 隨機產生一個顏色字串

分享此文連結 //n.sfs.tw/11162

分享連結 [PHP] 隨機產生一個顏色字串@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-23 20:54:44 最後編修
2017-06-03 12:00:30 By 張○○
 

久以前貼出去,後來要用時候找不到,上網去搜尋又搜尋到自己寫的函數,呵呵!趕快貼回家來。

在網頁中常會使用顏色字串的情況,例如 <font color="#123456"> 的"#123456 如果要想要每次都不太一樣來點變化,就可以使用這個函式。

 /**
   * 函數名稱:string CreateRndClrStr($startv, $darkflag)
   * 功能:隨機產生一個顏色字串
   * @param $startv: start value, an integer 0-255, 0:darkest(black) to 255:white
   * @param $darkflag: true:from $startv to darker value; false:from $startv to lighter value。(true向前演色、false向後淺色)
   * @return a color string. 回傳:字串(ex.#123456, #ABCDEF)
   * ex: CreateRndClrStr(200,false) create an light color string which lightest color value is 200 產生一個淺色的字串
   * ex: CreateRndClrStr(70,true) create an dark color string 產生一個深色的字串,最淺的顏色是70
   */

  function CreateRndClrStr($startv,$darkflag=false)
  {
    mt_srand((double)microtime()*1000000);
    $cv=0;
    for($ii=0;$ii<3;$ii++){
      if($darkflag) $v =mt_rand(0,$startv);
      else  $v =mt_rand($startv,255);
      $cv+= $v<< $ii*8;
    }
    $hex= str_pad(dechex($cv), 6, "0", STR_PAD_LEFT);
    return "#".$hex;
  }

原文 2010-12-10 14:59:56
 

END

你可能感興趣的文章

[PHP] 讀取作業系統程式執行結果 PHP讀取作業系統程式執行結果

[PHP>7.3] switch中的 Did you mean to use "continue 2"? 除錯 這近更新 PHP到7.3版以後,出現這樣的錯:targeting switch is equivalent to "break". Did you mean to use "continue 2"?解決方法

[PHP7] 利用Memcached 儲存 Session Memcached+ PHP7,利用Memcached 儲存 Session。

[PHP] preg_match 的貪婪和不貪婪比對 在php preg_match中預設是採用貪婪比對,太貪婪反而不符合需要,因此得採用「非貪婪比對」...

使用Yahoo OAuth2 2/2 使用Yahoo OAuth2認證我的網頁

[PHP8] 使用autoload autoload+ namespace +use 到了php7之後,namespace和use越來越重要,此篇整理autoload和namespace、use的結合使用。

隨機好文

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

[Win7] 燒錄 iso 檔 在Windows7 中內建燒錄程式,可以直接把檔案拉到光碟機裡,再執行燒錄。

NETCRAFT發現你的網站及作業系統 NETCRAFT可以發現你的網站及作業系統

APACHE的記錄檔格式 LogFormat 語法 在APACHE中有定義一些記錄的語法模版 在 /etc/httpd/conf/httpd.conf 中: LogForm

兩次使用InnoDB的慘痛經驗 Mysql 的Innodb引擎雖然好用,但是我得說說我兩次的慘痛經驗,這讓我考慮以後可能不會再使用innodb了