Làm thế nào tôi có thể nhập một biến từ một tệp bên ngoài? Điều tôi muốn làm là có một tệp cấu hình trong đó tôi có thể viết tất cả các cài đặt trang web của mình và sau đó nhập các cài đặt này vào mỗi tệp, vì vậy tôi có thể đặt da trang web và những thứ tương tự.
Tôi có thể làm cái này như thế nào?
Palacsint
Phim thương hiệu vàng 27,9K1010 gold badges79 silver badges109 bronze badges
hỏi ngày 9 tháng 4 năm 2010 lúc 15:30Apr 9, 2010 at 15:30
2
Đã trả lời ngày 9 tháng 4 năm 2010 lúc 15:31Apr 9, 2010 at 15:31
Remi Bourgarelremi Bourgarelremi bourgarel
8,9053 Huy hiệu vàng37 Huy hiệu bạc72 Huy hiệu đồng3 gold badges37 silver badges72 bronze badges
0
Bạn có thể có một tệp có cấu hình và sau đó bao gồm nó trên mỗi tập lệnh, như Jeroen đã nói với bạn:
config.inc.php
$config['dbname'] = 'myDB';
$config['dbuser'] = 'user';
...
Sau đó trong kịch bản của bạn
include_once['config.inc.php'];
Bạn cũng có thể sử dụng kế thừa nơi bạn có một mô hình, ví dụ sử dụng cấu hình và sau đó bạn có thể mở rộng lớp mô hình đó.
Đã trả lời ngày 9 tháng 4 năm 2010 lúc 16:11Apr 9, 2010 at 16:11
Mandrilmandrilmandril
4013 Huy hiệu bạc10 Huy hiệu đồng3 silver badges10 bronze badges
Nó phụ thuộc vào cách bạn muốn lưu trữ cấu hình của mình. Bạn chỉ có thể bao gồm một tệp PHP có những thứ như:
$config['stuff'] = "value";
Nhưng bạn cũng có thể sử dụng tệp cấu hình [INI] hoặc tệp XML. PHP có các chức năng tiêu chuẩn có sẵn để đọc các tệp cấu hình hoặc tệp XML, vì vậy cũng dễ dàng.
Đã trả lời ngày 9 tháng 4 năm 2010 lúc 15:34Apr 9, 2010 at 15:34
Jeroenjeroenjeroen
Phù bằng vàng 90,4K2121 gold badges113 silver badges132 bronze badges
Bạn có thể sử dụng auto_prepend_file
để dự phòng cài đặt của mình trong mỗi tập lệnh PHP đang thực thi. Nó ở bên trong php.ini
hoặc bạn có thể sử dụng .htaccess
[php_value auto_prepend_file "path/mysettings.php"
] hoặc sử dụng ini_set[]
. Tệp phải là hợp lệ hoặc hiện tại.
Palacsint
Phim thương hiệu vàng 27,9K1010 gold badges79 silver badges109 bronze badges
hỏi ngày 9 tháng 4 năm 2010 lúc 15:30Apr 9, 2010 at 16:27
Đã trả lời ngày 9 tháng 4 năm 2010 lúc 15:31PHPWDev
Remi Bourgarelremi Bourgarel1 silver badge6 bronze badges
stream_context_create [] - Tạo ngữ cảnh Stream
Bart Friederichs ¶ — Reads entire file into a string
Sự mô tả
6 bây giờ là vô hiệu.[$config['stuff'] = "value";
string $filename
,
bool
0 =
include_once['config.inc.php'];
1,include_once['config.inc.php'];
?resource
2 = include_once['config.inc.php'];
3,include_once['config.inc.php'];
int
4 = 0,include_once['config.inc.php'];
?int
5 = include_once['config.inc.php'];
3include_once['config.inc.php'];
]:
string|false
Hỗ trợ cho
4s tiêu cực đã được thêm vào. is the preferred way to read the contents of a file into a string. It will use memory mapping techniques if supported by your OS to enhance performance. $config['stuff'] = "value";
Ví dụ:
Ví dụ #1 Nhận và xuất nguồn của trang chủ của trang weburlencode[].
Thông số
include_once['config.inc.php'];
7Tên của tập tin để đọc.
include_once['config.inc.php'];
8Ghi chú::
Hằng số
9 có thể được sử dụng để kích hoạt bao gồm tìm kiếm đường dẫn. Điều này là không thể nếu gõ nghiêm ngặt được bật, vìinclude_once['config.inc.php'];
9 là INT. Sử dụnginclude_once['config.inc.php'];
1 thay thế.$config['stuff'] = "value";
9 constant can be used to trigger include path search. This is not possible if strict typing is enabled, sinceinclude_once['config.inc.php'];
9 is an int. Useinclude_once['config.inc.php'];
1 instead.$config['stuff'] = "value";
$config['stuff'] = "value";
2Một tài nguyên bối cảnh hợp lệ được tạo bằng stream_context_create []. Nếu bạn không cần sử dụng bối cảnh tùy chỉnh, bạn có thể bỏ qua tham số này bằng
include_once['config.inc.php'];
3.stream_context_create[]. If you don't need to use a custom context, you can skip this parameter by include_once['config.inc.php'];
3. $config['stuff'] = "value";
4Phần bù nơi việc đọc bắt đầu trên luồng ban đầu. Độ lệch âm tính từ cuối luồng.
Tìm kiếm [
$config['stuff'] = "value";
4] không được hỗ trợ với các tệp từ xa. Cố gắng tìm kiếm các tệp không phải địa phương có thể hoạt động với các độ lệch nhỏ, nhưng điều này là không thể đoán trước vì nó hoạt động trên luồng được đệm. $config['stuff'] = "value";
6Độ dài tối đa của dữ liệu đọc. Mặc định là đọc cho đến khi đạt được kết thúc của tệp. Lưu ý rằng tham số này được áp dụng cho luồng được xử lý bởi các bộ lọc.
Trả về giá trị
Hàm trả về dữ liệu đọc hoặc
include_once['config.inc.php'];
1 khi thất bại.include_once['config.inc.php'];
1 on failure. Cảnh báo
Hàm này có thể trả về Boolean
include_once['config.inc.php'];
1, nhưng cũng có thể trả về giá trị phi Boolean đánh giá thành include_once['config.inc.php'];
1. Vui lòng đọc phần về Booleans để biết thêm thông tin. Sử dụng toán tử === để kiểm tra giá trị trả về của hàm này.include_once['config.inc.php'];
1, but may also return a non-Boolean value which evaluates to include_once['config.inc.php'];
1. Please read the section on Booleans for more information. Use the === operator for testing the return value of this function.Errors/Exceptions
Lỗi mức
string[14] "lle Bjori Ro"0 được tạo ra nếu không thể tìm thấy
include_once['config.inc.php'];
7, $config['stuff'] = "value";
6 nhỏ hơn 0 hoặc nếu tìm kiếm $config['stuff'] = "value";
4 được chỉ định trong luồng không thành công.string[14] "lle Bjori Ro"0 level error is generated if
include_once['config.inc.php'];
7 cannot be found, $config['stuff'] = "value";
6 is less than zero, or if seeking to the specified $config['stuff'] = "value";
4 in the stream fails. Khi file_get_contents [] được gọi trên một thư mục, lỗi cấp
string[14] "lle Bjori Ro"0 được tạo trên Windows và cũng như Php 7.4 trên các hệ điều hành khác.file_get_contents[] is called on a directory, an
string[14] "lle Bjori Ro"0 level error is generated on Windows, and as of PHP 7.4 on other operating systems as well.
Thay đổi
8.0.0 | 6 bây giờ là vô hiệu. |
7.1.0 | Hỗ trợ cho 4s tiêu cực đã được thêm vào. |
Ví dụ
Ví dụ #1 Nhận và xuất nguồn của trang chủ của trang web
string[14] "lle Bjori Ro"7
Ví dụ #2 Tìm kiếm trong bao gồm_path
string[14] "lle Bjori Ro"8
Ví dụ #3 Đọc một phần của tệp
string[14] "lle Bjori Ro"9
Ví dụ trên sẽ xuất ra một cái gì đó tương tự như:
string[14] "lle Bjori Ro"
Ví dụ #4 sử dụng bối cảnh luồng
auto_prepend_file
0
Ghi chú
Lưu ý: Hàm này an toàn cho nhị phân.: This function is binary-safe.
Mẹo
Một URL có thể được sử dụng như một tên tệp với chức năng này nếu các giấy gói fopen đã được bật. Xem fopen [] để biết thêm chi tiết về cách chỉ định tên tệp. Xem các giao thức và trình bao bọc được hỗ trợ để biết các liên kết đến thông tin về những khả năng mà các trình bao bọc khác nhau có, ghi chú về việc sử dụng của chúng và thông tin về bất kỳ biến được xác định trước mà họ có thể cung cấp.fopen[] for more details on how to specify the filename. See the Supported Protocols and Wrappers for links to information about what abilities the various wrappers have, notes on their usage, and information on any predefined variables they may provide.
Cảnh báo
Hàm này có thể trả về Boolean
include_once['config.inc.php'];
1, nhưng cũng có thể trả về giá trị phi Boolean đánh giá thành include_once['config.inc.php'];
1. Vui lòng đọc phần về Booleans để biết thêm thông tin. Sử dụng toán tử === để kiểm tra giá trị trả về của hàm này.fsockopen[] to create an auto_prepend_file
3 socket, the developer is responsible for detecting and suppressing this warning. Lỗi mức string[14] "lle Bjori Ro"
0 được tạo ra nếu không thể tìm thấy include_once['config.inc.php'];
7, $config['stuff'] = "value";
6 nhỏ hơn 0 hoặc nếu tìm kiếm $config['stuff'] = "value";
4 được chỉ định trong luồng không thành công.
include_once['config.inc.php'];
$config['stuff'] = "value";
$config['stuff'] = "value";
- Khi file_get_contents [] được gọi trên một thư mục, lỗi cấp
string[14] "lle Bjori Ro"
0 được tạo trên Windows và cũng như Php 7.4 trên các hệ điều hành khác. - Thay đổi
- Phiên bản
- Sự mô tả
-
6 bây giờ là vô hiệu.$config['stuff'] = "value";
- Hỗ trợ cho
4s tiêu cực đã được thêm vào.$config['stuff'] = "value";
- Ví dụ
- $http_response_header
Ví dụ #1 Nhận và xuất nguồn của trang chủ của trang web ¶
Ví dụ #2 Tìm kiếm trong bao gồm_path
auto_prepend_file
4
auto_prepend_file
5
auto_prepend_file
6
auto_prepend_file
7Ví dụ #3 Đọc một phần của tệp ¶
Ví dụ trên sẽ xuất ra một cái gì đó tương tự như:
auto_prepend_file
8
auto_prepend_file
9
php.ini
0
php.ini
1Ví dụ #4 sử dụng bối cảnh luồng ¶
Ghi chú
php.ini
2
Lưu ý: Hàm này an toàn cho nhị phân. ¶
Ghi chú
php.ini
3
Lưu ý: Hàm này an toàn cho nhị phân. ¶
Ghi chú
php.ini
4
php.ini
5
php.ini
6