2012-06-25 47 views
5

Tôi muốn biết đâu là nơi tốt nhất để đặt ini_set() chức năng, bởi vì tôi nghĩ khi ini_set chức năng là bên trong các phương pháp như thế này:Nơi gọi hàm ini_set() trong lớp học?

private function archiveBackup() { 
    ini_set('memory_limit', '128M'); 
    ini_set('max_execution_time', 0); 
    ... 
} 

Chức năng ini_set không hoạt động ?!

Kịch bản của tôi hoạt động như sau: truy vấn jQuery ajax -> tệp ajax.php (tạo phiên bản của lớp và gọi một số phương thức) -> gọi phương thức của lớp.

Đâu là nơi tốt nhất? Trong ajax.php tệp hoặc khi bắt đầu lớp học hoặc phương pháp bên trong?

+0

Lưu ý rằng các giá trị ini này được đặt cho việc chạy tập lệnh đó ngay bây giờ. Để hoàn nguyên trong cùng một tập lệnh, bạn phải thực hiện thủ công. – Sammaye

Trả lời

5

Nói chung, nơi tốt nhất để đặt các cuộc gọi ini_set ở ngay (hoặc gần) khi bắt đầu tập lệnh. Bằng cách đó, nó khá giống với việc chúng đã được xác định trong tập tin php.ini ngay từ đầu.

+0

Có, nhưng nếu chia sẻ lưu trữ không chấp nhận tệp php.ini của tôi thì sao? –

+0

Điều này sẽ vẫn hoạt động. Từ được định nghĩa trong tệp PHP. Kolink chỉ giống như định nghĩa nó trong php.ini theo cách nó chạy – Sammaye

+0

Nếu yuor chia sẻ lưu trữ không chấp nhận php.ini mods chắc chắn rằng bạn được phép làm ini_set. Bạn có thể vi phạm các điều khoản và điều kiện của bạn bằng cách sử dụng lệnh này. – Sammaye

1

Tôi nhận thấy bạn đã đặt ini_set ở đầu hàm chính của bạn, rất có thể là chính xác.

Vì vậy:

Chức năng ini_set không hoạt động ?!

Có thể do nhà cung cấp dịch vụ lưu trữ được chia sẻ của bạn đã cho phép bạn chặn theo cách nào đó.

Như Kolink nói, có thể nhà cung cấp dịch vụ lưu trữ đang sử dụng disable_functions cho bạn.

0

Có thể được coi là sở thích cá nhân nhưng cá nhân tôi tránh sử dụng bất kỳ loại chỉ thị cấu hình PHP nào bên ngoài tệp cấu hình ứng dụng của tôi. Nói cách khác, nếu một lớp nào đó của dự án của tôi yêu cầu cấu hình mức chạy PHP cụ thể, tôi lưu ý rằng yêu cầu trong mô tả lớp nhưng vẫn áp dụng chính cấu hình đó trong các tệp cấu hình chính của tôi.

+3

Trong khi tôi đồng ý với sở thích của bạn nói chung, có một vài nơi (thường là các script cron), nơi tôi ghi đè lên một số cài đặt cấu hình - thường là giới hạn bộ nhớ. –

+0

Không bao giờ có một kinh nghiệm với cron mà sẽ yêu cầu tôi phải làm một cái gì đó như thế vì vậy tôi sẽ chỉ cần có từ của bạn trên đó :) – brezanac

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