2013-09-13 5 views
0

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

Strict Standards: Only variables should be passed by reference in /filemanager/afmlib.php on line 57

Line 57 в моем файловом менеджере есть:

function AFM_fileExt($filename) 
{ 
    return strtolower(end(explode('.', $filename)));////THIS IS LINE: 57 
} 

Как я могу это исправить?

+0

переписать его, не пытаясь сделать код в одной строке любой ценой? –

+0

Возможный дубликат [Строгие стандарты: только переменные должны передаваться по ссылке] (http://stackoverflow.com/questions/2354609/strict-standards-only-variables-should-be-passed-by-reference) –

ответ

-1

BTW Ваши коды работают для меня.

И я не знаю об этом работает, но попробуйте это один

function AFM_fileExt($filename) 
{ 
    $arr = explode('.', $filename); 
    return strtolower(end($arr)); 
} 
2

Почему бы не позволить PHP сделать работу:

function AFM_fileExt($filename) { 
    return strtolower(pathinfo($filename, PATHINFO_EXTENSION)); 
} 

Для полноты картины, this answer дает хорошее объяснение того, как возникает ошибка. Это потому, что end(array &$array) использует ссылку - отметьте амперсанд в объявлении.

Смежные вопросы