[精讚] [會員登入]
1603

[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

你可能感興趣的文章

使用strcmp來判斷日期是否介於某日期之間 要比較現在日期是否在兩個日期之間,使用字串比對的方法

作業上傳程式 提供學生作業上傳的程式

[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"?解決方法

[PHP] 判斷文字、數字、文字加數字的方法 幾個PHP數字和文字操作上的小眉角:判斷文字、數字、文字加數字的方法

[PHP] CodeIgniter 3+pure+smarty安裝及環境設置1/2 PHP framework CodeIgniter 3+ pure CSS +smarty Template Engine的整合

[PHP] 位元運算 (Bitwise operation)及和PERL比較 PHP 的位元運算,及和PERL比較整理

隨機好文

談借錢 人借錢時手心向上頭向下,人還錢時手心向下頭向上

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

PHP for sphinx 函式庫安裝 PECL/sphinx PHP>= 5.2.2 已經能原生支援 sphinx,可是預設的沒有裝,我們得自己裝才能用

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?