Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > อยากทราบว่า php random ค่าแบบเป็นเปอร์เซ็นต์ ยังไงครับ



 

อยากทราบว่า php random ค่าแบบเป็นเปอร์เซ็นต์ ยังไงครับ

 



Topic : 033647



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์




คือว่าผมอยากจะ random ค่า แบบเป็นเปอร์เซ็นต์

เช่น ให้ ค่า 1 มีเปอร์เซ็นต์ ในการ random ออกมา 20% ส่วนค่า 2 มีโอกาศ 80% ประมาณนี้อ่ะครับ

รบกวนช่วยแนะนำทีน่ะครับ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-10-29 12:28:57 By : pollok View : 3845 Reply : 3
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

คุณก็หารน่ะครับ โดยเอาจำนวนที่เป็นไปได้ทั้งหมด ไปหาร 100

เช่น 1-5 แสดงว่ามี 5 ตัว = 100/5 ก็จะได้คนล่ะ 20% ที่จะสุ่มแสดงผล






Date : 2009-10-29 12:34:15 By : webmaster
 


 

No. 2



โพสกระทู้ ( 830 )
บทความ ( 0 )



สถานะออฟไลน์


ฟังค์ชั่นนี้ เป็นของ พี่ Dr.Yes php.deeserver.net

ผมเอามาทำตัวอย่างเล่นๆ ให้ดู

Code (PHP)
<?php

error_reporting(0);

function w_rand($samples, $weights) 
{  
	if ( count($samples) != count($weights) ) 
	{ 
		return null; 
	} 

	$sum 	= array_sum($weights) * 100;  
	$rand 	= mt_rand(1, $sum);  
	
	foreach ($weights as $i=>$w) 
	{  
		$weights[$i] = $w * 100 + ( $i > 0 ? $weights[$i-1] : 0 );  
		if ( $rand <= $weights[$i] ) { return $samples[$i]; }  
	}  
}  


//น้ำหนักที่จะให้ออก
$weights = array(40, 35, 10, 5, 4, 3, 2, 1);

$samples = array('แดง', 'เหลือง', 'น้ำเงิน', 'ชมพู', 'ดำ', 'ม่วง', 'ขาว', 'ส้ม');

for ( $i = 1; $i <= 100; $i++ )
{
    $result = w_rand($samples, $weights) ;
    echo 'ซุ่มครั้งที่ ' . $i . ' สีที่ได้' . $result . '<br />';
}

echo '<br /><br />';

$color = array('red' => 'แดง', 'yellow' => 'เหลือง', 'blue' => 'น้ำเงิน', 'pink' => 'ชมพู', 'black' => 'ดำ', 'purple' => 'ม่วง', 'white' => 'ขาว', 'orange' => 'ส้ม');

$samples = array('red', 'yellow', 'blue', 'pink', 'black', 'purple', 'white', 'orange');

$total = array();

for ( $i = 1; $i <= 100; $i++ )
{
    $result = w_rand($samples, $weights) ;
    echo 'สุ่มครั้งที่ ' . $i . ' สีที่ได้<font color="' . $result . '">' . $color[$result] . '</font><br />';
    $total[$result]++;
}

asort($total, 1);
echo '<pre>';
print_r($total);
echo '</pre>';
?>

Date : 2009-10-29 14:37:30 By : danya
 

 

No. 3



โพสกระทู้ ( 143 )
บทความ ( 0 )



สถานะออฟไลน์


ขอบคุณมากๆครับ เด๋วจะลองดู
Date : 2009-10-29 16:01:08 By : pollok
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : อยากทราบว่า php random ค่าแบบเป็นเปอร์เซ็นต์ ยังไงครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่