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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Как конвертировать массив (с числовыми индексами) в ассоциативный?

Сообщения:  [1-6] 

 
 автор: sapphire   (05.02.2009 в 17:12)   письмо автору
 
   для: Temnovit   (05.02.2009 в 13:46)
 

Еще разок попробую пояснить:
Мне нужно решить такую задачу.
Рассматриваем дочерний нулевой массив первого элемента родительского массива.
Проверяем есть ли что-то в 6 элементе?
Если да то проверяем, существует ли какое-то значение в (6 элементе) следующего идущего элемента массива [1] - первого .
Если да, значит индекс текущего массива не изменяем (т.е. оставляем без изменения).
Если нет - присвоим нулевому элементу массива первый (теперь нулевой элемент
дочернего массива содержит свои элементы и элементы массива который был под номером 1 (как-бы сложение двух элементов)) и желательно проверку делать пока не будет найден 6 элемент с каким-то содержимым.
Если будет такой элемент то оставляем его без изменений и повторяем заново
проверку в следующих элементах на пустоту и т. д.

  Ответить  
 
 автор: BinLaden   (05.02.2009 в 14:35)   письмо автору
 
   для: sapphire   (05.02.2009 в 14:01)
 

Формулировка задачи

  Ответить  
 
 автор: sapphire   (05.02.2009 в 14:01)   письмо автору
 
   для: Temnovit   (05.02.2009 в 13:46)
 

:) что не понятно?

  Ответить  
 
 автор: Temnovit   (05.02.2009 в 13:46)   письмо автору
 
   для: sapphire   (04.02.2009 в 18:14)
 

>Понятно ли я сформулировал задачу?

Нет :)

  Ответить  
 
 автор: sapphire   (05.02.2009 в 11:16)   письмо автору
 
   для: sapphire   (04.02.2009 в 18:14)
 

Просто у меня с этим вышел недочет. Логически будет неправильно преобразовать этот массив в ассоциативный пока не решится эта проблема

  Ответить  
 
 автор: sapphire   (04.02.2009 в 18:14)   письмо автору
 
 

Есть такой код

$str  = '<script type='text/javascript'>
var N1=[];
N1[0]=['00443533','443533','000773','1','10','Soccer / INTERNATIONAL FRIENDLY','Saudi Arabia (N)','Thailand','0204'];
N1[1]=['','','','2','','','','','','',,'','','','True','2','0',0,'0','0';
</script>';

$ptrn = '#(N(\\d+)\\[(\\d+)\\]=\\[(.+)\\];)\\r?\\n#e';
$str = str_replace(',,',',null,',$str);
$x = preg_match_all($ptrn, $str, $out, PREG_SET_ORDER);
foreach($out as $v)
{
  if(isset($v[2]) && isset($v[3]) && isset($v[4]) )
  $n[$v[2]][$v[3]] = eval('return array('.$v[4].');' );
}
echo '<pre>';
print_r($n);


Результат


Array
(
    [1] => Array
        (
            [0] => Array
                (
                    [0] => 00443533
                    [1] => 443533
                    [2] => 000773
                    [3] => 1
                    [4] => 10
                    [5] => Soccer / INTERNATIONAL FRIENDLY
                    [6] => Saudi Arabia (N)      /*этот элемент заполнен, если 
в следующем N1[1] этот элемент пустой, значит мессив  [1] => Array 
принадлежит доминирующему  [0] => Array. Дальше идем: если снова пустой, значит опять принадлежит. Если заполнен, то ? 
(может это дело выводить в еще один уровень массивов?)*/
                    [7] => Thailand
                    [8] => 0204
             [1] => Array
                (
                    [0] => 
                    [1] => 
                    [2] => 
                    [3] => 2
                    [4] => 
                    [5] => 
                    [6] => 
                    [7] => 
                    [8] => 


Выходит, массив [0] => Array считается доминирующим (или как его можно назвать), а [1] => Array ему принадлежащий по [6] элементу главного
Понятно ли я сформулировал задачу? Если кто может - помогите.

  Ответить  

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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