Чтение из файла + trim

lantastic

Новичок
Чтение из файла + trim

У меня в файле хранятся допустим фамилии, по одной в каждой строке. Я считываю их вот так:

PHP:
$names = file('names.txt');

В этом случае элементы массива $names завершаются символом перевода строки, что неудобно. Надо применить к каждому элементу trim();

Я хочу написать альтернативную функцию myreadfile() чтобы она счиывала файл в массив и сразу применяла trim() к каждому элементу массива. Возвращать она будет массив, как и file(). Понятно, что это просто сделать. Но вот как бы вы ее написали эту функцию? Я просто думаю, что сделаю не оптимально, я ведь новичок. Я вот думаю array_walk использовать.

Заранее спасибо!
 
PHP:
$names=file_get_contents('names.txt');
$arr=explode('\n',$names);
Я бы наверно так сделал

если хочешь свой способ, без проблем..главное чтобы тебе было удобней
 
а ты попытайся
надо иногда напрягать содержимое черепной коробки
 
попытаться написать фигню? хороший совет, учту на будущее.
 
с array_map более-менее понятно... но вот trim() можно использовать будет с ней? или надо будет свою функцию trim2() ввести?

а вот насчет

PHP:
$names=file_get_contents('names.txt'); 
$arr=explode('\n',$names);

тут что не так?
 
> с array_map более-менее понятно... но вот trim() можно
> использовать будет с ней?

рекоммендуется уже начать пробовать

> тут что не так?
все
тут одна опечатка и одна фактическая ошибка в двух строках

слабоумному выпендрежнику которые эту херню родил предлагается самостоятельно их найти
в воспитательных целях
 
я уже разобрался, работает и так и так, спасибо!!!

только вот во втором случае в explode() надо использовать "\r\n" так ведь? :)
 
нет

т.е. это не единственно возможная комбинация символов для разделения строк
поэтому надо использовать функции которые их нормально проверяют
 
опечатка
$names=file_get_contents('names.txt');
$arr=explode("\n",$names);
двойные кавычки..так работает, проверил)
 
не спасибо, мне одного раза достаточно
не единственная не спорю
 
тебе никто спорить не предлагал
тебе предлагается, пока еще самому
в этом беспросветном ламерстве которое ты написал
найти ошибку
 
я повторяю ошибки нет, работает, разбивает, разбивает правильно.
 
не знаю какое вы уж там ламерство нашли, а я уже сочинил функцию на основе первого варианта, предложенного neko , потому что trim() еще и пробелы по концам обрежет, а вот explode() нет

PHP:
  function my_readfile($fname)
  {
     $f = file($fname);
     return array_map('trim',$f);
  }

правильно я написал? все работает! ура

-~{}~ 19.03.05 10:00:

я даже улучшил функцию:

function my_readfile($fname)
{
return array_map('trim',file($fname));
}

:D
 
Сверху