Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Преобразовать массив в другой массив (урезанный)
 
 автор: hanterz   (13.01.2007 в 10:11)   письмо автору
 
 

есть массив, каждый эл-т имеет вид

ыфвыфвыфвыф:3232:53232:0123213:2:у116цйуцй546
павпавыыфвыф:23342:5324432:0123213:2:у116цйуц3й546

и т.д

надо получить массив. чтобы в нем были эл-ты только до первого : т.е.

ыфвыфвыфвыф
павпавыыфвыф

   
 
 автор: himic   (13.01.2007 в 10:42)   письмо автору
 
   для: hanterz   (13.01.2007 в 10:11)
 

Наверное так

<? 
substr
($massiv[0],0,strpos($massiv[0],':'));
?>

   
 
 автор: hanterz   (13.01.2007 в 12:38)   письмо автору
 
   для: himic   (13.01.2007 в 10:42)
 

нет, так не подойдет

   
 
 автор: Unkind   (13.01.2007 в 12:44)   письмо автору
 
   для: hanterz   (13.01.2007 в 12:38)
 


<?php
$array 
= array(
"ыфвыфвыфвыф:3232:53232:0123213:2:у116цйуцй546",
"павпавыыфвыф:23342:5324432:0123213:2:у116цйуц3й546"
);

$new_array = array();

for(
$i 0$i count($array); $i++)
{
$new_array[] = strtok($array[$i], ":");
}
?>

   
 
 автор: LuxeMate   (13.01.2007 в 13:09)   письмо автору
 
   для: hanterz   (13.01.2007 в 10:11)
 


<?php
$arr 
= array(
"ыфвыфвыфвыф:3232:53232:0123213:2:у116цйуцй546",
"павпавыыфвыф:23342:5324432:0123213:2:у116цйуц3й546"
);
for(
$i=0;$i<=count($arr);$i++){
preg_match_all("#([^>]*):([^>]*:[^>]*:[^>]*:[^>]*:[^>]*)#",$arr[$i],$out[$i]);
echo 
$out[$i][1][0]."<br>";
}
?>

   
 
 автор: Sergey89   (13.01.2007 в 14:50)   письмо автору
 
   для: hanterz   (13.01.2007 в 10:11)
 

<?php
$words 
= array(
    
'ыфвыфвыфвыф:3232:53232:0123213:2:у116цйуцй546',
    
'павпавыыфвыф:23342:5324432:0123213:2:у116цйуц3й546'
);

foreach (
$words as &$v) {
    
$v strtok($v':');
}
?>

   
 
 автор: hanterz   (13.01.2007 в 15:32)   письмо автору
 
   для: Sergey89   (13.01.2007 в 14:50)
 

спасибо всем кто помог, еще вопрос, каким образом лучше сравнить массивы т.е. найти элементы которые есть в одном и нет в другом ?

   
 
 автор: AlexelA   (13.01.2007 в 16:08)   письмо автору
 
   для: hanterz   (13.01.2007 в 15:32)
 

Попробуйте так:

$new_arr = array();
$new_arr = array_diff($arr1,$arr2);

   
 
 автор: Sergey89   (13.01.2007 в 18:20)   письмо автору
 
   для: hanterz   (13.01.2007 в 15:32)
 

Если необходимо просто сравнить, то можно записать условие:

if ($ar1 == $ar2) {
    //...
}

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования