За последние 24 часа нас посетили 18353 программиста и 1722 робота. Сейчас ищут 1748 программистов ...

Рекукрсивный массив

Тема в разделе "PHP для новичков", создана пользователем drwhite, 19 сен 2008.

  1. drwhite

    drwhite Активный пользователь

    С нами с:
    21 окт 2007
    Сообщения:
    5
    Симпатии:
    0
    Как выявить рекурсию в массиве, чтобы не писать в рекурсивных функциях счетчик вложенности уровня?


    PHP:
    1.  
    2. function processStringRecursive($data = '')
    3. {
    4.   if(is_array($data))
    5.   {
    6.     foreach($data as $k => $v)
    7.     {
    8.       если ($v ссылается или содержит $data)
    9.       {
    10.         continue;
    11.       };//
    12.              
    13.       $res_data[$k] = processStringRecursive($data[$k]);
    14.     };//foreach
    15.   }
    16.   else if(is_scalar($data))
    17.   {
    18.     $res_data = htmlspecialchars($data);
    19.   }
    20.   else
    21.   {
    22.     $res_data = false;
    23.   };//
    24.   return $res_data;
    25. }//func
    26.  
    27. $test_data = Array();
    28. $test_data[] = '<p>P1</p>';
    29. $test_data[] = Array('<p>P21</p>', '<p>P22</p>');
    30. $test_data[] = '<p>P3</p>';
    31. $test_data[] = $test_data;
    32.  
    33. echo '<pre>';
    34. print_r(processStringRecursive($test_data));
    35. echo '</pre>';
    36.  
    Как сторку 7 перевести на php?
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    PHP:
    1. if($v==$data)
     
  3. drwhite

    drwhite Активный пользователь

    С нами с:
    21 окт 2007
    Сообщения:
    5
    Симпатии:
    0
    Fatal error: Nesting level too deep - recursive dependency?