Вывод отдельных элементов из массива

Vehont

Guest
Вывод отдельных элементов из массива

Имеется файл
pages.txt
PHP:
main|Главная
contact|Связь
forum|Форум
fot_gal|Фото Галерея
about|О проекте
необходимо вывести только первое слово перед знаком "|" в каждой строчке
пробую сделать вот так
PHP:
$array=file('pages/pages.txt');
foreach($array as $val)
{
echo $val;
}
Скрипт выводит всё так же как и в файле. как вывести то что мне нужно. Уже по всякому пробовал, чё то голова совсем не соображает
 

MD

Guest
[m]strpos[/m] и [m]substr[/m] тебе помогут.
как применить их уже сам догадаешься, надеюсь.
 

Edson

Новичок
Re: Вывод отдельных элементов из массива

<?
$array=file('pages/pages.txt');
foreach($array as $val)
{
$tmp=split('|',$val);
echo $tmp[0];
}
?>
 

itprog

Cruftsman
Edson

Тогда уж

PHP:
<?php
$array=file('pages/pages.txt');
foreach($array as $val)
{
$tmp=explode('|',$val);
echo $tmp[0];
}
?>
 

Edson

Новичок
Автор оригинала: itprog
Edson

Тогда уж

PHP:
<?php
$array=file('pages/pages.txt');
foreach($array as $val)
{
$tmp=explode('|',$val);
echo $tmp[0];
}
?>
а разнца какая-то есть? Они же делают аналогичные действия?
 

Vehont

Guest
Тьфу блин, как сам не догадался? Спасибо
 

itprog

Cruftsman
Edson
Разница есть, split использует регулярные выражения для разделения, а explode нет, т.е. explode получается быстрее.

Из мануала [m]split[/m]:
Подсказка: preg_split(), which uses a Perl-compatible regular expression syntax, is often a faster alternative to split(). If you don't require the power of regular expressions, it is faster to use explode(), which doesn't incur the overhead of the regular expression engine)
 
Сверху