PHP – Include Files

câu lệnh include (hoặc require) sẽ lấy tất cả code từ file chỉ định vào file sử dụng câu lệnh.

include (hoặc require) rất hữu ích khi bạn sử dụng cùng một đoạn code PHP, HTML hoặc text trên nhiều trang của một trang web.

Câu lệnh include và require

Câu lệnh include và require sẽ chèn nội dung của 1 file php vào 1 file php khác trước khi thực thi.

Các câu lệnh include và require giống nhau, trừ khi có lỗi:

  • require sẽ tạo ra lỗi (E_COMPILE_ERROR) và dừng script.
  • include sẽ tạo cảnh báo (E_WARNING) và script sẽ tiếp tục.

Vì vậy, nếu bạn muốn thực thi tiếp file php kể cả khi thiếu file chèn vào thì dùng câu lệnh include. Còn trong trường hợp FrameWork, CMS hay một ứng dụng PHP phức tạp, bạn nên dùng câu lệnh require.

require và include giúp tiết kiệm thời gian viết code. Điều đó có nghĩa là bạn có thể chuẩn bị sẵn header, footer, menu… và nhúng vào khi cần. Sau đó nếu sử những phần này, bạn chỉ cần sửa ở 1 file.

include 'filename';

or

require 'filename';

PHP include

Ví dụ 1

Giả sử chúng ta có một file footer chuẩn tên là “footer.php”,như sau:

<?php
echo "<p>Copyright © 1999-" . date("Y") . " W3Schools.com</p>";
?>

Để đưa footer vào một trang, dùng câu lệnh include:

<html>
<body>

<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>
<?php include 'footer.php';?>

</body>
</html>

Ví dụ 2

Giả sử chúng ta có một file menu chuẩn tên “menu.php”:

<?php
echo '<a href="/default.asp">Home</a> -
<a href="/html/default.asp">HTML Tutorial</a> -
<a href="/css/default.asp">CSS Tutorial</a> -
<a href="/js/default.asp">JavaScript Tutorial</a> -
<a href="default.asp">PHP Tutorial</a>';
?>

Tất cả các trang trong trang Web đều có menu này. để thực hiện cần nhúng file này vào:

<html>
<body>

<div class="menu">
<?php include 'menu.php';?>
</div>

<h1>Welcome to my home page!</h1>
<p>Some text.</p>
<p>Some more text.</p>

</body>
</html>

Ví dụ 3

Giả sử chúng ta có một file là “vars.php”, với một số biến:

<?php
$color='red';
$car='BMW';
?>

sau đó chúng ta include file “vars.php”, các biến này có thể được sử dụng trong file gọi:

<html>
<body>

<h1>Welcome to my home page!</h1>
<?php include 'vars.php';
echo "I have a $color $car.";
?>

</body>
</html>

PHP require

Câu lệnh require cũng được sử dụng để chèn một file vào mã PHP.

Tuy nhiên, có một sự khác biệt giữa include và require. Khi một file được gọi trong include và PHP không thể tìm thấy nó, script sẽ tiếp tục thực thi:

<html>
<body>

<h1>Welcome to my home page!</h1>
<?php include 'noFileExists.php';
echo "I have a $color $car.";
?>

</body>
</html>

Nếu chúng ta làm ví dụ tương tự bằng cách sử dụng câu lệnh require, câu lệnh echo sẽ không được thực thi vì script sẽ ngừng sau khi require trả về lỗi:

<html>
<body>

<h1>Welcome to my home page!</h1>
<?php require 'noFileExists.php';
echo "I have a $color $car.";
?>

</body>
</html>