Как я могу избавиться от предупреждения filesize () в PHP? - PullRequest
4 голосов
/ 17 июня 2011

Кроме отключения предупреждений ... что я могу сделать в своем коде, чтобы избавиться от этой ошибки:

warning: filesize() [function.filesize] stat failed for ....  on line 152

Код:

$store_filesize = filesize($file->filepath);

Ответы [ 5 ]

6 голосов
/ 17 июня 2011

Я не уверен, что это именно то, что вам нужно (например, мне непонятно, хотите ли вы понять, почему это происходит и как обойти это), но если вы просто хотите подавить ошибки, вы обычно можете использовать @ in перед именем функции.

, например

$store_filesize = @filesize($file->filepath);
3 голосов
/ 17 июня 2011
$store_filesize = @filesize($file->filepath);
if ($store_filesize === FALSE) {
  throw new \Exception('filesize failed');
}
3 голосов
/ 17 июня 2011

Не звоните filesize, если файл на самом деле не существует:

$store_filesize = is_file($file->filepath) ? filesize($file->filepath) : 0;

Документы для is_file: http://php.net/manual/en/function.is-file.php

:)

1 голос
/ 17 июня 2011

Проверьте, существует ли файл, является ли файл доступным для чтения

if (is_readable($file->filepath)) {
    $store_filesize = filesize($file->filepath);
}
1 голос
/ 17 июня 2011

Не забудьте проверить на null:

if($file->filepath != null){
   $store_filesize = filesize($file->filepath);
}
...