วิธีการใช้งาน Function preg_match()

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

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

User avatar
samsonnaze3
PHP Hero Member
PHP Hero Member
Posts: 190
Joined: 04/03/2012 1:06 am

วิธีการใช้งาน Function preg_match()

Post by samsonnaze3 » 13/06/2012 12:26 pm

ฟังก์ชั่น preg_match() นั้นเอาไว้ใช้ตรวจสอบว่า มีข้อความตาม pattern ที่กำหนด ใน text หรือไม่ และสามารถถอดข้อความออกมาได้

ตัวอย่างการถอดข้อความออกจาก Tag xml โดยดึง link youtube ออกมา

Code: Select all

$xml_youtube = '<object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/tKIznHS-RKk&rel=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/tKIznHS-RKk&rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object>'

preg_match('/value="(.+?)"></',$xml_youtube ,$matches);
echo $matches[1];
 
ผลลัพธ์

Code: Select all

http://www.youtube.com/v/tKIznHS-RKk&rel=1
โดยที่ ตัว $matches จะคืนค่าออกมาเป็น Array โดยจะคืนค่าของผลลัพธ์ที่เราหา
ส่วน '/value="(.+?)"></' นั้นเป็น Pettle ที่เอาไว้ใช้หา โดยที่ เริ่มหาจากคำว่า value=" แล้วปิดท้ายด้วย "></ ซึ่ง ข้อความไหนก็ตามที่อยู่ใน value="" จะถูกถอดออกมาอยู่ในตัวแปร $matches
และ $xml_youtube เป็นข้อความที่ต้องการเอามาค้นหา
Last edited by samsonnaze3 on 13/06/2012 1:32 pm, edited 1 time in total.
Image


tohkai_php
PHP Sr. Member
PHP Sr. Member
Posts: 95
Joined: 10/04/2012 9:09 am

Re: วิธีการใช้งาน Function preg_match()

Post by tohkai_php » 14/06/2012 3:25 pm

</embed></object>'

error ครับ ไม่มี ; คิคิ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23491
Joined: 22/09/2008 6:18 pm
Contact:

Re: วิธีการใช้งาน Function preg_match()

Post by mindphp » 15/06/2012 10:07 am

หา embed ควรใช้

Code: Select all

src
เพราะ value จากตัวอย่างมีมากกว่า 1
1 embed จะมี src แค่ 1 ตัวจึงเหมาะกว่า
ติดตาม 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

supakwong
PHP Jr. Member
PHP Jr. Member
Posts: 25
Joined: 18/07/2008 11:01 pm
Contact:

Re: วิธีการใช้งาน Function preg_match()

Post by supakwong » 26/05/2013 6:56 am

preg_match_all('#(prod" name=")(.*?)(">)#',$html,$***);

อยากถามความหมา่ยตรงนี้ครับ พอแนะนำได้ไหมครับว่ามันกำหนดว่ายังไงบ้าง อยากลองแกะ preg_match เดิมของ code นะครับ

User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 23491
Joined: 22/09/2008 6:18 pm
Contact:

Re: วิธีการใช้งาน Function preg_match()

Post by mindphp » 26/05/2013 4:00 pm

ลองดูตามลิงค์ นี้ครับ
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

supakwong
PHP Jr. Member
PHP Jr. Member
Posts: 25
Joined: 18/07/2008 11:01 pm
Contact:

Re: วิธีการใช้งาน Function preg_match()

Post by supakwong » 27/05/2013 4:42 pm

ขอบคุณครับ

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Share Knowledge”

Who is online

Users browsing this forum: No registered users and 13 guests