Thursday, November 1, 2012

กำจัด BBCode ในข้อมูล PHP

เราสามารถจำกัดแท็ก HTML ที่อยู่ปะปนกับ String ในข้อมูล PHP ได้ โดยการใช้งานคำสั่ง strip_tags แต่ถ้าเป็น BBCode ที่นิยมใช้กันในเว็บบอร์ดสำเร็จรูปต่าง ๆ ทั้งหลายนั้น เราจะต้องเขียนฟังก์ชั่นขึ้นมาเพื่อกำจัด BBcode เหล่านั้น ซึ่งทาง codeinw เราก็มีฟังก์ชั่นสำหรับการนี้ให้ทุกท่านได้นำไปใช้ ดังนี้ครับ
function stripBBCode($text_to_search) {
   $pattern = '|[[\/\!]*?[^\[\]]*?]|si';
   $replace = '';
   return preg_replace($pattern, $replace, $text_to_search);
}
จากฟัง์ชั่นนี้เป็นการใช้ Regular Expression ในการตรวจสอบจุดเริ่มต้นและจุดสิ้นสุดของ BBCode ที่จะเริ่มต้นด้วย [ และสิ้นสุดด้วย ] โดยจะแทนที่ส่วนของ BBcode ด้วย String ว่าง ๆ นั่นเองครับ

No comments:

Post a Comment