2010-03-30 30 views
9

Tôi đang cố gắng sử dụng get_browser(), tiếc là trang của tôi nằm trên máy chủ chia sẻ và tôi không có quyền truy cập vào php.ini.PHP: Sử dụng browscap.ini trên máy chủ chia sẻ. - ini_set() không

Tôi đã tải xuống phiên bản mới nhất của browscap.ini và được đặt trong thư mục gốc tài liệu của tôi. Tôi đã sau đó bổ sung như sau: -

if (! Ini_set ('browscap', '/ home/thứ tư /browscap.ini')) {
echo "Không thể thiết lập browscap";
} khác {
echo "browscap = [". ini_get ('browscap'). "]";
}
lối ra();

Nhưng điều này không thành công, (nb: câu lệnh echo cho điều kiện không thành công luôn hiển thị [] - ngay cả khi tôi không có tệp browscap.ini, cài đặt sẽ vẫn hiển thị trong ini_get .... phải không?)

Tôi đã xem các câu hỏi trước đây về vấn đề này và dường như chúng không giúp ích gì cho bạn?

Trả lời

12

tôi đã không nghe nói về tính năng này trước đây, nhưng trong Googling around Tôi đã xem qua phpbrowscap (trước đây tại một this Google Code repo (mà là một lớp độc lập mà bạn nên có thể sử dụng trong môi trường lưu trữ của bạn. Các tác giả hỗ trợ nhiều file cấu hình và the QuickStart (trước đây here) trông đặc biệt dễ dàng.

+0

Cảm ơn Tony, Tôi đã theo dõi đề xuất của bạn và hiện có phpbr owscap làm việc - rất tuyệt. Thật không may, nó có nghĩa là tôi sẽ không bao giờ tìm hiểu tại sao phương pháp ini_set() không hoạt động, nhưng tôi đoán cuộc sống quá ngắn .... thx jon – GreybeardTheUnready

+0

Chỉ muốn thêm giọng nói của tôi nói rằng nó hoạt động như một sự quyến rũ! Phát hiện trình duyệt tuyệt vời! (Ban đầu tôi muốn sử dụng http://deviceatlas.com nhưng nó là một bộ nhớ hog và có khả năng sẽ không hoạt động trên nhiều máy chủ chia sẻ máy khách của chúng tôi) – electblake

8

Theo PHP manual, 'browscap' là thay đổi duy nhất trong php.ini hệ thống và/hoặc httpd.conf. Bạn không thể đặt nó ở cấp độ kịch bản.

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