2010-02-24 31 views
6

Nếu bạn chạy phpinfo(); nó có hiển thị chính xác những gì có trong tệp php.ini hoặc nếu cài đặt được thay đổi khi đang chạy qua php với các phương thức như ini_set() hoặc qua .htaccess chúng sẽ được hiển thị trong phpinfo không?phpinfo() lấy thông tin ở đâu?

Trả lời

7

phpinfo() hiển thị, trong cột "Giá trị địa phương", cấu hình hiện tại; tức là

  • những gì có trong php.ini
  • cuối cùng, overriden trong VirtualHost hoặc trong .htaccess file Apache
  • cuối cùng, overriden bởi ini_set

Cuối cùng, nó cho thấy các giá trị cấu hình đó sẽ là/được sử dụng bởi kịch bản của bạn.


Là một sidenote: nó cũng hiển thị thông tin mà không phải là-thực sự "cấu hình" mỗi gia nhập, như dòng cấu hình đã được sử dụng để biên dịch PHP, các phiên bản của Zend Engine, ...

1

Nó sẽ hiển thị môi trường chạy hiện tại, không chỉ là những gì có trong php.ini. Bất cứ điều gì thay đổi môi trường như các phương pháp bạn đề cập sẽ được phản ánh.

0

Tôi nghĩ đó là ý nghĩa của cột "toàn cầu" và "cục bộ" là "toàn cầu" là những gì được đặt trong php.ini trung tâm, "cục bộ" là bất kỳ thay đổi nào đã được áp dụng cho cài đặt chung bằng một của các phương pháp bạn mô tả.

0

Nếu bạn sử dụng ini_set(), những thay đổi được thực hiện trên-the-fly cho kịch bản hiện chỉ, nó không thay đổi vĩnh viễn php.ini cài đặt. phpinfo() hiển thị cài đặt hiện tại của những gì có trong tệp php.ini cũng bị ảnh hưởng bởi hàm apache và ini_set.

0

phpinfo() luôn hiển thị giá trị cài đặt trong 2 cột. Cột đầu tiên là giá trị toàn cầu được đặt trong tệp php.ini. Cột thứ hai là giá trị của mỗi người dùng, được đặt trong php.ini hoặc có thể ghi đè bằng .htaccess tệp hoặc ghi đè qua ini_set trước khi gọi phpinfo().

Xin lưu ý rằng không phải tất cả giá trị cài đặt đều có thể được ghi đè bằng .htaccess hoặc ini_set. Xem danh sách đầy đủ here và xem cột Có thể thay đổi. Xem phần giải thích og giá trị cột có thể thay đổi here.

Tự mình thử.

Các vấn đề liên quan