Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP ต้องการคำชี้แจง


แนะนำตัว

ผลของคำสั่ง require คล้ายกับ include คำสั่งใน PHP อย่างไรก็ตาม มีข้อแตกต่างหลักประการหนึ่ง หาก parser ไม่พบไฟล์ที่ต้องการ จะทำให้เกิดข้อผิดพลาดร้ายแรง ดังนั้นจึงยุติสคริปต์ปัจจุบัน ในทางกลับกัน คำสั่ง include จะส่งคำเตือนในกรณีที่ไม่พบไฟล์และการดำเนินการของสคริปต์ปัจจุบันจะดำเนินต่อไป

PHP parser พยายามค้นหาไฟล์ในโฟลเดอร์ปัจจุบันโดยค่าเริ่มต้นและเพิ่มเติมในไดเร็กทอรีที่กล่าวถึงใน include_path การตั้งค่าของ php.ini เช่นกรณีของคำสั่งรวม หากไฟล์ที่ขอไม่พร้อมใช้งานในโฟลเดอร์ปัจจุบันและโฟลเดอร์ include_path ตัวแยกวิเคราะห์ PHP จะปล่อย E_COMPILE_ERROR และการดำเนินการของโมดูลการโทรจะหยุดลง

ลักษณะการทำงานอื่น ๆ ของคำสั่ง require คล้ายกับการรวมคำสั่ง .

ต้องการตัวอย่าง

ในตัวอย่างต่อไปนี้ สคริปต์ php หลักประกอบด้วย test.php

ตัวอย่าง

<?php
echo "inside main script\n";
$var1=100;
echo "now calling test.php script\n";
require "test.php";
echo "returns from test.php";
?>
//test.php
<?php
$var2=200;
//accessing $var1 from main script
echo $var1+$var2 . "\n";
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ต่อไปนี้เมื่อเรียกใช้สคริปต์หลักจากบรรทัดคำสั่ง -

inside main script<br />now calling test.php script<br /><br />300<br />returns from test.php

ข้อผิดพลาดสำหรับความต้องการที่ล้มเหลว

ในตัวอย่างต่อไปนี้ ความพยายามที่จะรวมไฟล์ที่ไม่มีอยู่จะส่งผลให้เกิดการเตือน

ตัวอย่าง

<?php
echo "inside main script\n";
$var1=100;
echo "now calling nosuchfile.php script\n";
require "nosuchfile.php";
echo "returns from nosuchfile.php";
?>

ผลลัพธ์

ซึ่งจะให้ผลลัพธ์ตามมา โปรดทราบว่าโปรแกรมถูกหยุดโดยข้อผิดพลาด -

inside main script
now calling nosuchfile.php script
PHP Fatal error: require(): Failed opening required 'nosuchfile.php' (include_path='C:\xampp\php\PEAR') in line 5
Fatal error: require(): Failed