hoàn thiện upload và global search
This commit is contained in:
60
check-upload.php
Normal file
60
check-upload.php
Normal file
@@ -0,0 +1,60 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Check PHP upload limits
|
||||
* Run: php check-upload.php
|
||||
*/
|
||||
|
||||
echo "=== PHP Upload Limits ===" . PHP_EOL;
|
||||
echo "upload_max_filesize: " . ini_get('upload_max_filesize') . PHP_EOL;
|
||||
echo "post_max_size: " . ini_get('post_max_size') . PHP_EOL;
|
||||
echo "memory_limit: " . ini_get('memory_limit') . PHP_EOL;
|
||||
echo "max_execution_time: " . ini_get('max_execution_time') . PHP_EOL;
|
||||
echo PHP_EOL;
|
||||
|
||||
// Check if limits are sufficient
|
||||
$uploadMax = parseSize(ini_get('upload_max_filesize'));
|
||||
$postMax = parseSize(ini_get('post_max_size'));
|
||||
|
||||
echo "=== Status ===" . PHP_EOL;
|
||||
echo "Max upload size: " . formatSize($uploadMax) . PHP_EOL;
|
||||
echo "Max post size: " . formatSize($postMax) . PHP_EOL;
|
||||
|
||||
if ($uploadMax < 50 * 1024 * 1024) {
|
||||
echo PHP_EOL . "WARNING: upload_max_filesize is too small!" . PHP_EOL;
|
||||
echo "Current: " . ini_get('upload_max_filesize') . PHP_EOL;
|
||||
echo "Required: 50M or higher" . PHP_EOL;
|
||||
echo PHP_EOL . "Solutions:" . PHP_EOL;
|
||||
echo "1. Edit /etc/php/8.3/cli/php.ini" . PHP_EOL;
|
||||
echo "2. Run: php -d upload_max_filesize=50M artisan serve" . PHP_EOL;
|
||||
echo "3. Use: ./start-server.sh" . PHP_EOL;
|
||||
} else {
|
||||
echo PHP_EOL . "OK: Upload limits are sufficient!" . PHP_EOL;
|
||||
}
|
||||
|
||||
function parseSize(string $size): int
|
||||
{
|
||||
$unit = strtolower(substr($size, -1));
|
||||
$value = (int) $size;
|
||||
|
||||
return match ($unit) {
|
||||
'g' => $value * 1024 * 1024 * 1024,
|
||||
'm' => $value * 1024 * 1024,
|
||||
'k' => $value * 1024,
|
||||
default => $value,
|
||||
};
|
||||
}
|
||||
|
||||
function formatSize(int $bytes): string
|
||||
{
|
||||
if ($bytes >= 1024 * 1024 * 1024) {
|
||||
return round($bytes / (1024 * 1024 * 1024), 2) . ' GB';
|
||||
}
|
||||
if ($bytes >= 1024 * 1024) {
|
||||
return round($bytes / (1024 * 1024), 2) . ' MB';
|
||||
}
|
||||
if ($bytes >= 1024) {
|
||||
return round($bytes / 1024, 2) . ' KB';
|
||||
}
|
||||
return $bytes . ' bytes';
|
||||
}
|
||||
Reference in New Issue
Block a user