ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderator: mindphp, ผู้ดูแลกระดาน

andy

ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย andy »

ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

ผมมีข้อมูลเป็น text file ครับ ซึ่งมีข้อมูลเยอะมากๆ

ข้อมูลจะเป้นตัวเลข 4 ตัวไม่ซ้ำกันครับ ต่อด้วยอักษร x,y หรือ z เฉพาะ 3ตัวนี้ แต่เป็นตัวใดตัวหนึ่ง
แต่ละชุดจะขึ้นบรรทัดใหม่เสมอ

ตย. ข้อมูลใน text ลักษณะประมาณนี้ครับ

โค้ด: เลือกทั้งหมด

2510x
2522y
2526z
2524y
2534x
2531z
ผมอยากสร้างฟอร์มค้นหา โดยพิมตัวเลข 4 ตัวลงไปแล้วแสดงค่าออกมาเฉพาะตัวอักษรหลังสุด
เช่น ผมพิมค้นเลข 2531 ก็จะแสดงผลออกมาว่า z
แต่ถ้าไม่เจอ จะแสดงผลว่าไม่มีข้อมูล
อยากได้โค้ดมากเลยครับ ขอบคุณครับ
ภาพประจำตัวสมาชิก
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
โพสต์: 41374
ลงทะเบียนเมื่อ: 22/09/2008 6:18 pm
ติดต่อ:

Re: ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย mindphp »

ถ้าเป็น text ต้องศึกษา
preg_match()
ขั้นต้นลองดูที่
https://www.mindphp.com/modules.php?name ... age&pid=78
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
4404

Re: ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

mindphp เขียน:ถ้าเป็น text ต้องศึกษา
preg_match()
ขั้นต้นลองดูที่
https://www.mindphp.com/modules.php?name ... age&pid=78
ขอบคุณมากครับ

แบบนี้พอได้ไหม

โค้ด: เลือกทั้งหมด

<?php
if(isset($_POST))
{
$id=$_POST['id'];
$strFileName = "abc.txt";
$objFopen = fopen($strFileName,"r");
while( !feof($objFopen) )
{
  $Buffer = fgets($objFopen,4096);
  if(strstr(strtolower($Buffer),$id))
  {
	if($Buffer=glob('*a'))
    echo "a";
	else if($Buffer=glob('*b'))
	echo "b";
	else 
	echo "c";
  }
}

fclose($objFopen);
}

?>
4404

Re: ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

หรือแบบที่สองดีครับ

โค้ด: เลือกทั้งหมด

<?php
if(isset($_POST))
{
$id=$_POST['id'];
$strFileName = "abc.txt";
$objFopen = fopen($strFileName,"r");
while( !feof($objFopen) )
{
  $Buffer = fgets($objFopen,4096);
  if(strstr(strtolower($Buffer),$id))
  {
	if(ereg("a$",$Buffer))
    echo "a";
	else if(ereg("b$",$Buffer))
	echo "b";
        else if(ereg("b$",$Buffer))
        echo "c";
	else 
	echo "ไม่มีหมวด";
  }
else echo "ไม่มีข้อมูล";
}

fclose($objFopen);
}

?>
แบท
ภาพประจำตัวสมาชิก
imsn
PHP Super Member
PHP Super Member
โพสต์: 375
ลงทะเบียนเมื่อ: 07/05/2010 12:58 pm
ติดต่อ:

Re: ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย imsn »

ผมว่าใช้ preg_match ตามที่คุณ mindphp แนะนำดีกว่านะครับ
ereg มันจะถูกยกเลือก แล้วตั้งแต่ PHP 5.3.0. เป็นต้นไป
ช่วยตอบเพราะอยากโปรโหมทเว็บ คิคิคลิกเลย
หาเพื่อนฝรั่งคุย M ...
4404

Re: ต้องการค้นหาค่าใน text file แล้วแสดงผลออกมาครับ

โพสต์ที่ยังไม่ได้อ่าน โดย 4404 »

สุดท้ายได้แบบนี้ครับ :-D :-D

$file = file_get_contents("file.txt");

if(strpos($file, $id."x")) {
echo "a";
}
else if (strpos($file, $id."y")){
echo "b";
}
else if (strpos($file, $id."z")){
echo "c";
}else {
echo "not found";
}
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 130