2010-09-07 26 views

Trả lời

10

Nếu tệp được bao gồm, nó được bao gồm.

requice_once() hoạt động chính xác như include_once(), ngoại trừ việc nó giết chết tập lệnh khi không bao gồm tập lệnh.

Do đó trong ví dụ của bạn, tập lệnh được bao gồm một lần.

0

Khái niệm: Bao gồm những gì nó nói trên tin: nó bao gồm mã 'myfile.php' trong mã của tệp hiện tại. Yêu cầu giống như một câu lệnh nhập khẩu bằng các ngôn ngữ lập trình khác.

Hậu tố _once có nghĩa là PHP tránh inlcuding/yêu cầu tệp nếu nó đã có sẵn cho tập lệnh hiện tại thông qua câu lệnh include/require trước đó hoặc đệ quy thông qua các câu lệnh include/require trong các tập lệnh được nhập khác.

0

Tệp có được bao gồm lại hay chỉ một lần?

myfile.php chỉ được bao gồm một lần.

require_once 'myfile.php'; //included 
include_once 'myfile.php'; // not included 

Sự khác nhau giữa hai loại là gì?

  • includeinclude_once cả hai sẽ phát ra một cảnh báo nếu nó không thể tìm thấy một tập tin.

  • requirerequire sẽ phát ra lỗi nghiêm trọng nếu không tìm thấy tệp.

Sự khác biệt giữa include_oncerequire là khi họ không thể tìm thấy file include_once sẽ phát ra một cảnh báo và require sẽ phát ra một lỗi nghiêm trọng.

yêu cầu giống hệt bao gồm ngoại trừ khi không thành công, nó cũng sẽ tạo ra lỗi mức E_COMPILE_ERROR gây tử vong. Nói cách khác, nó sẽ tạm dừng tập lệnh trong khi chỉ bao gồm phát ra cảnh báo (E_WARNING) cho phép tập lệnh tiếp tục. [http://php.net/manual/en/function.require.php]

Yêu cầu gây ra một lỗi về thất bại và bao gồm cố gắng để phục hồi? bất kỳ sự khác biệt nào khác?

include phép bạn khôi phục có, một thất bại require tuyên bố luôn luôn kết thúc một cách, một trycatch thậm chí không thể cứu kịch bản của bạn.

Giá trị của nó chỉ ra điều gì sẽ xảy ra nếu các kết hợp khác của bốn số liệu đánh giá tệp (include, include_once, requirerequire) đã được sử dụng.

Nếu tập tin đã được tìm thấy

includerequire sẽ luôn bao gồm các tập tin bất kể trước đó bạn đã sử dụng require, include, require hay include_once với cùng một tập tin.

include_once 'myfile.php'; //included 
include 'myfile.php'; //always included 
require 'myfile.php'; //always included 
require_once 'myfile.php'; // not included, prevously included via [function.include_once], [function.include] and [function.require] 

include_oncerequire sẽ chỉ bao gồm các tập tin nếu nó chưa được trước đây bao gồm sử dụng một tuyên bố require, include, require hay include_once.

require 'myfile.php'; //always included 
include_once 'myfile.php'; // not included, prevously included via [function.require] 
Các vấn đề liên quan