แปลงจาก eregi เป็น preg_match
foreach ($_GET as $check_url) {
if ((eregi("<[^>]*script*\"?[^>]*>", $check_url)) || (eregi("<[^>]*object*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*iframe*\"?[^>]*>", $check_url)) || (eregi("<[^>]*applet*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*meta*\"?[^>]*>", $check_url)) || (eregi("<[^>]*style*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*form*\"?[^>]*>", $check_url)) || (eregi("\([^>]*\"?[^)]*\)", $check_url)) ||
(eregi("\"", $check_url))) {
die ();
}
}
ใครพอแปลง regular expression จาก eregi เป็น preg_match ได้บ้างครับ
if ((eregi("<[^>]*script*\"?[^>]*>", $check_url)) || (eregi("<[^>]*object*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*iframe*\"?[^>]*>", $check_url)) || (eregi("<[^>]*applet*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*meta*\"?[^>]*>", $check_url)) || (eregi("<[^>]*style*\"?[^>]*>", $check_url)) ||
(eregi("<[^>]*form*\"?[^>]*>", $check_url)) || (eregi("\([^>]*\"?[^)]*\)", $check_url)) ||
(eregi("\"", $check_url))) {
die ();
}
}
ใครพอแปลง regular expression จาก eregi เป็น preg_match ได้บ้างครับ
แปลงทำไม่รึ
ฟังก์ชั่นกลุ่ม preg ใช้ยากกว่าฟังก์ชั่นในกลุ่ม ereg เยอะ และบางครั้งผลลัพท์ที่ได้ก็ไม่ค่อยเหมือนกันด้วย ถ้ามันใช้งานได้ดีอยู่แล้ว ไม่แนะนำให้แปลงนะ
ใน php 5.3,6 ฟังก์ชั่นในกลุ่ม ereg จะถูกยกเลิกไปครับ ผมก็เลยจะเปลี่ยนให้มันรองรับไปเลย คือตอนนี้ผมลองใส่ / / คร่อมหัวท้ายบางตัวมันก็ work บางตัวก็ไม่ work ก็กำลังอ่านเรื่องนี้อยู่ด้วยปกติไม่ค่อยได้ใช้ regular expression เลย แต่เห็นว่ามันมีประโยชน์ก็ไปลอกเขามาใช้ครับ...
ผมยังไม่รู้เลย...
แต่โดยส่วนตัวใช้ฟังก์ชั่นในกลุ่ม preg มากกว่า ก็คงรอดตัวไปครับ
เป็นเรื่องปกติครับที่บางคำสั่งมันจะไม่ทำงาน เพราะฟังก์ชั่นใน 2 กลุ่มนี้จะมีการทำงานต่างกันครับ คงต้องค่อยๆแยกทำไปทีละอันละครับ