Yêu cầu_once và bao gồm_once trong PHP

Bạn có thể tiết kiệm đáng kể thời gian và công sức bằng cách kết hợp các tệp — Thay vì nhập nhiều lần toàn bộ khối mã, hãy lưu mã đó vào một tệp riêng biệt và đưa vào bất cứ đâu bạn muốn bằng cách sử dụng hướng dẫn

require 'path/to/file.php';
4 và
require 'path/to/file.php';
5. Một ví dụ phổ biến là bao gồm các tệp đầu trang, chân trang và menu trên tất cả các trang của trang web

Các câu lệnh

require 'path/to/file.php';
6 và
require 'path/to/file.php';
0 giống hệt nhau, ngoại trừ khi thất bại

  • require 'path/to/file.php';
    
    0 sẽ tạo ra lỗi nghiêm trọng [E_COMPILE_ERROR], dừng tập lệnh
  • require 'path/to/file.php';
    
    6 sẽ chỉ đưa ra cảnh báo [E_WARNING], tập lệnh sẽ tiếp tục

Cú pháp của câu lệnh

require 'path/to/file.php';
4 và
require 'path/to/file.php';
5 như sau

include 'path/to/file.php';

hoặc

require 'path/to/file.php';

ví dụ

Giả sử có một tệp tiêu đề tiêu chuẩn được gọi là tiêu đề. php như sau

Welcome to PHP Tutorials";

Để bao gồm tệp tiêu đề trong một trang, câu lệnh bao gồm được sử dụng



    PHP Tutorial Page!
    

Some text.

Some more text.

Câu lệnh include_once và require_once

Có thể xung đột sẽ phát sinh nếu bạn bao gồm cùng một tệp [thường là tệp chức năng hoặc tệp lớp] nhiều lần trong mã của bạn bằng cách sử dụng lệnh

require 'path/to/file.php';
6 hoặc
require 'path/to/file.php';
0. PHP bao gồm các câu lệnh
require 'path/to/file.php';
7 và
require 'path/to/file.php';
8 để tránh vấn đề này. Với một ngoại lệ, các câu lệnh này hoạt động tương tự như các câu lệnh bao gồm và yêu cầu

Dưới đây là một ví dụ về câu lệnh require_once. Giả sử mã bên dưới nằm trong tệp hello. php

include 'path/to/file.php';
1 từ khóa được sử dụng để nhúng mã PHP từ tệp khác. Nếu không tìm thấy tệp, một cảnh báo sẽ được hiển thị và chương trình tiếp tục chạy. Nếu tệp đã được bao gồm trước đó, câu lệnh này sẽ không bao gồm nó nữa

Câu lệnh

require 'path/to/file.php';
6 [hoặc
include 'path/to/file.php';
3] lấy tất cả văn bản/mã/đánh dấu tồn tại trong tệp được chỉ định và sao chép nó vào tệp sử dụng câu lệnh bao gồm

Bao gồm các tệp rất hữu ích khi bạn muốn bao gồm cùng một PHP, HTML hoặc văn bản trên nhiều trang của một trang web

PHP bao gồm và yêu cầu báo cáo

Có thể chèn nội dung của một tệp PHP vào một tệp PHP khác [trước khi máy chủ thực thi nó], với câu lệnh bao gồm hoặc yêu cầu

Các câu lệnh bao gồm và yêu cầu giống hệt nhau, ngoại trừ khi thất bại

  • include 'path/to/file.php';
    
    3 sẽ tạo ra lỗi nghiêm trọng [E_COMPILE_ERROR] và dừng tập lệnh
  • require 'path/to/file.php';
    
    6 sẽ chỉ đưa ra cảnh báo [E_WARNING] và tập lệnh sẽ tiếp tục

Vì vậy, nếu bạn muốn quá trình thực thi tiếp tục và hiển thị cho người dùng kết quả, ngay cả khi tệp bao gồm bị thiếu, hãy sử dụng câu lệnh bao gồm. Mặt khác, trong trường hợp mã hóa ứng dụng FrameWork, CMS hoặc PHP phức tạp, hãy luôn sử dụng câu lệnh yêu cầu để đưa tệp khóa vào luồng thực thi. Điều này sẽ giúp tránh ảnh hưởng đến tính bảo mật và tính toàn vẹn của ứng dụng, chỉ trong trường hợp vô tình thiếu một tệp chính

Bao gồm các tập tin tiết kiệm rất nhiều công việc. Điều này có nghĩa là bạn có thể tạo tệp tiêu đề, chân trang hoặc menu tiêu chuẩn cho tất cả các trang web của mình. Sau đó, khi cần cập nhật tiêu đề, bạn chỉ có thể cập nhật tệp bao gồm tiêu đề

cú pháp

bao gồm 'tên tệp';

hoặc

yêu cầu 'tên tệp';

PHP bao gồm các ví dụ

ví dụ 1

Giả sử chúng ta có một tệp chân trang tiêu chuẩn có tên là "footer. php", trông như thế này

tiếng vang"

Bản quyền © 1999-". ngày ["Y"]. " W3Schools. com

";
?>

Để bao gồm tệp chân trang trong một trang, hãy sử dụng câu lệnh

require 'path/to/file.php';
6

Ví dụ


Chào mừng đến với trang chủ của tôi

Một số tiếp theo

Một số văn bản khác



Run example »

ví dụ 2

Giả sử chúng ta có một tệp menu tiêu chuẩn gọi là "menu. php"

echo 'Home -
Hướng dẫn HTML -
Hướng dẫn CSS -
Hướng dẫn JavaScript -
PHP Tutorial';
?>

Tất cả các trang trong trang Web nên sử dụng tệp menu này. Đây là cách nó có thể được thực hiện [chúng tôi đang sử dụng một

phần tử để menu có thể dễ dàng được tạo kiểu bằng CSS sau này]

Ví dụ




Chào mừng đến với trang chủ của tôi

Một số tiếp theo

Một số văn bản khác


Chạy ví dụ »

ví dụ 3

Giả sử chúng ta có một tệp tên là "vars. php", với một số biến được định nghĩa

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

Sau đó, nếu chúng tôi bao gồm "vars. php", các biến có thể được sử dụng trong tệp gọi

Ví dụ


Chào mừng đến với trang chủ của tôi.
echo "Tôi có một chiếc ô tô $color. ";
?>


Run example »

PHP bao gồm so với. yêu cầu

Câu lệnh

include 'path/to/file.php';
3 cũng được sử dụng để đưa tệp vào mã PHP

Tuy nhiên, có một sự khác biệt lớn giữa bao gồm và yêu cầu;

Ví dụ


Chào mừng đến với trang chủ của tôi.
echo "Tôi có một chiếc ô tô $color. ";
?>


Run example »

Nếu chúng ta thực hiện ví dụ tương tự bằng cách sử dụng câu lệnh

include 'path/to/file.php';
3, câu lệnh echo sẽ không được thực thi vì quá trình thực thi tập lệnh sẽ chết sau khi câu lệnh
include 'path/to/file.php';
3 trả về một lỗi nghiêm trọng

Sự khác biệt giữa yêu cầu một lần và bao gồm trong PHP là gì?

Sử dụng yêu cầu khi ứng dụng yêu cầu tệp. Sử dụng tính năng bao gồm khi tệp không được yêu cầu và ứng dụng sẽ tiếp tục khi không tìm thấy tệp .

Sự khác biệt giữa các chức năng bao gồm [] và yêu cầu [] là gì?

bao gồm[] Vs yêu cầu[] . Đồng thời, câu lệnh require[] tạo ra lỗi nghiêm trọng và chấm dứt tập lệnh. the include[] statement generates a PHP alert but allows script execution to proceed if the file to be included cannot be found. At the same time, the require[] statement generates a fatal error and terminates the script.

Sự khác biệt giữa các câu lệnh bao gồm và Bao gồm là gì?

Câu lệnh include_once bao gồm và đánh giá tệp đã chỉ định trong quá trình thực thi tập lệnh. Đây là một hành vi tương tự như câu lệnh bao gồm, với sự khác biệt duy nhất là nếu mã từ một tệp đã được bao gồm, mã đó sẽ không được bao gồm lại và bao gồm một lần trả về true .

Chủ Đề