PDA

View Full Version : PHP include() กะ require() ต่างยังไง



KiAk
19-12-2008, 07:26 PM
สำหรับในเรื่องphp นะครับ ทั้ง 2 ฟังก์ชันนี่จะเป็นฟังก์ชันที่จะใช้เรียกไฟล์ .php เข้ามาประมวลผลครับ และถ้าใน page ที่เราเรียกมานั้นๆ มีการ set ตัวแปร หรือการ query มันก็จะทำทันทีก่อนทำบรรทัดที่อยู่หลัง 2 ฟังก์ชันนี้ครับ คือว่า ไม่ใช่ว่ามันจะประมวลผลก่อนทำอย่างอื่นในไฟล์ หรือว่าทำอย่างอื่นเสร็จแล้วค่อยประมวลผลเหมือนอย่างที่บางคนเข้าใจนะครับ
แต่ว่าการ เรียกของมันยังมีข้อแต่ต่างอยู่ตรงที่

include() : ฟังก์ชั่นนี้ถ้าเกิด error ขึ้น เช่นไม่พบไฟล์ มันจะแสดงข้อความเป็น warning ก็คือมันจะแสดงข้อความผิดพลาดเฉย ๆ แต่สคริปต์จะข้ามมันไป และสามารถทำงานต่อไปได้

require() : ถ้าเกิด error ขึ้น มันจะขึ้นข้อความพิดพลาด และจบการทำงานทันที (ถือว่าสิ้นสุดการประมวลผลไฟล์) ฟังก์ชั่นนี้เหมาะสำหรับเรียกไฟล์จำนวนมาก และขาดไฟล์นั้นไม่ได้

form การใช้ก็เหมือนกันครับ คือ include(’xxx.php’); require(’xxx.php’);
แล้วก็มี tip เล็กๆน้อยๆ จากโพสก่อนหน้านี้


8. Use full paths in includes and requires, less time spent on resolving the OS paths.
“ใช้ path เต็มๆใน include และ require จะเร็วกว่าใส่ relative path”

Do: require(‘path/to/myClass.class.php’);
Don’t: require(‘../myClass.class.php’);

mestaisung
09-01-2009, 03:43 PM
ขอบคุณครับ ผมกำลังเก็บเกี่ยวความรู้ php

ครับ กำลังหัดเขียนอะครับ

tatchadol
10-01-2009, 12:49 AM
จริงมันต่างกันตรงแสดง error ครับ
และจะมี require_once ต่อจาก include_once อีก ต่างจากธรรมดาจรงจะถูกเรียกแค่ครั้งเดียว
ลองอ่านจาก php.net ดูเพิ่มเติมครับ
ถ้าผิดพลาดต้องขออภัยด้วยครับ เพราะโดยปกติผมใช้แต่ require_once เพราะมันปลอดภัย

guy852
10-01-2009, 04:56 AM
รู้สึกว่า include นี่จะทำงานแบบ loop ด้วยนะครับ ต่างจาก require