Câu lệnh include
[hoặc require
] 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
require
sẽ tạo ra lỗi nghiêm trọng [E_COMPILE_ERROR] và dừng tập lệnhinclude
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 include
Ví dụ
Một số tiếp theo
Một số văn bản khác
ví dụ 2
Giả sử chúng ta có một tệp menu tiêu chuẩn gọi là "menu. php"
echo 'Trang chủ -
Hướng dẫn HTML -
Hướng dẫn CSS -
Hướng dẫn JavaScript -
Hướng dẫn PHP';
?>
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ụ
Một số tiếp theo
Một số văn bản khác
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='đỏ';
$xe hơi='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ụ
echo "Tôi có một chiếc xe $color. “;
?>
PHP bao gồm so với. yêu cầu
Câu lệnh require
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ụ
echo "Tôi có một chiếc xe $color. “;
?>
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ì quá trình thực thi tập lệnh sẽ chết sau khi câu lệnh require
trả về một lỗi nghiêm trọng
Xin chào, tôi đang làm việc với các tệp phpmailer của mình và tôi đã tạo quy tắc xác thực để kiểm tra xem các trường nhập 'nhất định' có đáp ứng yêu cầu của tôi hay không sau khi xác minh hoàn tất, họ sẽ gửi nó cho người dùng chèn địa chỉ email của họ vào cơ sở dữ liệu của chúng tôi để
Bây giờ tôi có 2 vấn đề, tệp testing.php
sẽ có hàm required_once[]
trỏ đến tệp phpmailer của tôi với thông tin được chèn ngay bây giờ, tôi thường nhập địa chỉ email của người dùng để gửi cho họ chứ không phải tôi vì đó là đường dẫn mặc định cho thư của tôi
ví dụ cho thấy 3 trường là tất cả những gì được chỉnh sửa hoặc không được thêm vào tệp phpmailer của tôi nhưng được chèn vào testing.php
tôi phải thêm hoặc xóa những gì
if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
1 để gửi thư của tôi cho người dùng để xác minh thưrequire_once [$_SERVER['DOCUMENT_ROOT'] . '/test.php'];
$head = "Dear [$email]";
$body = "Attached to this email is a generated key that is used to verify that this email account belongs to $name $srn";
$foot = "If this is not you or you did not just try to sign up for MrLaptop.co.za email blast than feel free to ignore this email. ";
$key = substr[md5[uniqid[rand[], true]], 6, 6];
$msg = $head . "
" . $body ."
" . $key . "
" . $foot ;
$mail->Subject = "From:$name $srn [$email]";
$mail->Body = $msg;
$mail->AltBody = "Sent By Mrlaptop.co.za";
tên trường nhập liệu để nhập email là
if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
2 Tôi phải thêm biểu mẫu if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
3 chỉ cần hỏi vì tôi đang cố gắng tránh những câu hỏi khó hiểu hoặc lộn xộnVấn đề thứ hai nằm ở dạng html vì trang ở định dạng
if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
4, vấn đề là khi email được gửi cho chính tôi trong trường hợp này, nó tạo ra một khóa ngẫu nhiên và trong biểu mẫu if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
5 có một trường nhập được hiển thị và một trường khác if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
tôi muốn chuyển xác thực đã được tạo trong
if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
6 và chuyển nó sang if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
7 để tôi có thể tạo xác minh rằng khóa được tạo khớp với trường nhập vì nó sẽ được sao chép từ email của anh ấy/cô ấy, vì vậy nếu tôi tạo lại khóa đã tạo thì nó sẽ cung cấp . làm bất kỳ sự giúp đỡ sẽ được đánh giá cao xin vui lòngCần thêm thông tin gì chỉ cần cho tôi biết để tôi có thể thêm nó
và tôi cũng không biết mình nên áp dụng
if [isset[$_POST['FormS']]] {
require_once ['PHP/Testing.php'];
echo $results;
}
if [isset[$_POST['key']]] {
require_once ['PHP/sent.php'];
echo $results;
}
8 ở đâu và cách áp dụng nó cho khóa đã được tạo chứ không phải tập lệnh php cho nó vì nó sẽ ngẫu nhiên tạo ra một khóa mớiX