PHP จัดอันดับคำในไฟล์ .txt ทำยังไงคับ ??

เริ่มโดย ThaNaButS, 02 ตุลาคม 2008, 12:25:51

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

ThaNaButS

คือในไฟล์ .txt มีดังนี้

ตุ๊ด
ตุ๊ด
หญิง
เกย์
เลส
เกย์
เลส
เลส
เลส
ตุ๊ด
เลส
ชาย

จะเห็นว่ามี
ตุ๊ด 3
หญิง 1
ชาย 1
เกย์ 2
เลส 5

ผมอยากให้ PHP  เรียงจำนวนอันดับจากมากไปหาน้อย 3 อันดับแรกทำยังไงคับ คิดไม่ออกคับว่าจะทำไง ??  :-[ :-[

ColdMoney

จับใส่ array สิครับ ถ้ามีคีย์ซ้ำก็ +1 ถ้าไม่ซ้ำก็เพิ่มใหม่  :)
[direct=https://www.jumnong.com]รับจำนอง[/direct] [direct=https://burapasup.com]รับซื้อบ้าน[/direct] [direct=https://kadsan.com]สินค้าราคาถูก[/direct] [direct=https://checkcheap.com]เปรียบเทียบราคา[/direct]

EThaiZone

<?php
$list 
str_replace(array("\r""\n"), ""file("list.txt"));
foreach(
$list as $var$count[$var]++;
arsort($count);
print_r($count);
?>


จัดให้ครับ แหะๆ  ::)

ITAXIz


GolfT

โอ้วเทพมากเลยคับคุณ EThaiZone
สั้นกระชับได้ใจความดีจริงๆ

:-*
myfineday.com --> อัพเดททุกเรื่องราวน่าสนใจ

EixQzUnG

EThaiZone โปร ด้าน php  :) จับกินดีมะเนีย 

ThaNaButS

#6
อ้างถึงจาก: EThaiZone ใน 02 ตุลาคม 2008, 20:27:01
<?php
$list 
str_replace(array("\r""\n"), ""file("list.txt"));
foreach(
$list as $var$count[$var]++;
arsort($count);
print_r($count);
?>


จัดให้ครับ แหะๆ  ::)

พี่โจ้คับ แบบว่า งง เรื่อง array อะคับเวลามันเอาไปใช้จะเรียกชื่อของคนที่มีชื่อมากสุด 3 คนทำไงอะคับ

อธิบายเรื่อง Array ด้วยก้อดีคับแบบว่าหาอ่านในเน็ตแล้ว งง คับ  :-[ :-[


echo $count['เลส'];

แบบนี้มันก้อจะบอกว่า 5

แต่คือผมไม่รู้ชื่อของคนที่มากทึ่สุดอะคับทำไง อิอิ

EThaiZone

<?php
$list 
str_replace(array("\r""\n"), ""file("list.txt"));
foreach(
$list as $var$count[$var]++;
arsort($count);
echo 
"<pre>".print_r($counttrue)."</pre>";

//แบบแรก
foreach($count as $key => $var) {
echo $key."<br/>";
}

echo 
"<br/><br/>";

//แบบสอง ใช้ฟังค์ชั่นที่คุม pointer
reset($count); //อันนี้ต้องเรียกทุกครั้งให้ pointer มันกลับไปตั้งต้นที่ index แรกใหม่
echo "First - ".key($count)."<br/>"//key ใช้คืนค่า index ที่ pointer ชี้ในขณะนั้น
next($count); //ถัดไป
echo "Second - ".key($count)."<br/>";
next($count);
echo 
"Third - ".key($count)."<br/>";
prev($count); //ก่อนหน้า
echo "Second - ".key($count)."<br/>";
end($count); //ท้ายสุด
echo "Last - ".key($count)."<br/>";
reset($count); //กลับไปตั้งต้นใหม่
echo "First - ".key($count)."<br/>";
?>


:)

tinnoi

ขอบคุณมากครับ เจ๋งมากเลย เอาไปทำระบบ โพลแบบ text ได้เลยนะครับเนี่ย
[direct=https://trainee.naruthee.com]หาที่ฝึกงาน[/direct] ,
[direct=http://www.piyamitrgroup.com]รับรื้อถอน[/direct] ,
[direct=https://fastvisa2024.weebly.com/]รับทำวีซ่า[/direct] ,
[direct=https://business.10thai.com]10thai[/direct]

ThaNaButS


awat

อ้างถึงจาก: EThaiZone ใน 02 ตุลาคม 2008, 20:27:01
<?php
$list 
str_replace(array("\r""\n"), ""file("list.txt"));
foreach(
$list as $var$count[$var]++;
arsort($count);
print_r($count);
?>


จัดให้ครับ แหะๆ  ::)

ขอบคุณครับ
.NET Developer, Cloud computing Developer
รับทำ component joomla, wordpress, drupal