Computer >> Máy Tính >  >> Lập trình >> PHP

Kiểm tra memory_limit trong PHP

‘Memory_limit’ là dung lượng bộ nhớ máy chủ tối đa mà một tập lệnh PHP đơn lẻ được phép sử dụng. Giá trị cần được chuyển đổi trước khi so sánh ngưỡng bộ nhớ.

Ví dụ - 64M được chuyển đổi thành 64 * 1024 * 1024. Sau đó, quá trình so sánh được thực hiện và kết quả được in ra.

<?php
$memory_limit = ini_get('memory_limit');
if (preg_match('/^(\d+)(.)$/', $memory_limit, $matches)) {
   if ($matches[2] == 'M') {
      $memory_limit = $matches[1] * 1024 * 1024; // nnnM -> nnn MB
   } else if ($matches[2] == 'K') {
      $memory_limit = $matches[1] * 1024; // nnnK -> nnn KB
   }
}
$ok = ($memory_limit >= 640 * 1024 * 1024); // at least 64M?
echo '<phpmem>';
echo '<val>' . $memory_limit . '</val>';
echo '<ok>' . ($ok ? 1 : 0) . '</ok>';
echo '</phpmem>';

Đầu ra sẽ là giới hạn bộ nhớ của thiết lập môi trường cụ thể đó.