За последние 24 часа нас посетили 61853 программиста и 1591 робот. Сейчас ищут 907 программистов ...

Массивы. Сделать вывод более корректным

Тема в разделе "PHP для новичков", создана пользователем Dima4321, 12 дек 2010.

  1. Dima4321

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

    С нами с:
    1 апр 2009
    Сообщения:
    683
    Симпатии:
    0
    Не понимаю как удалить слово Array при выполнении скрипта

    это не помогает

    PHP:
    1. <?php
    2. ini_set('display_errors',1);
    3.  
    4. $m=array(
    5. array ('abba', 'beatles','bad boys'),
    6. array ('fun', 'modern', 'c c catch'), 'blueeee', 'red', 'green',
    7. array('day', 'bay',),
    8. 'fedor'=>'maks', 'baby');
    9.  
    10. foreach($m as $new)
    11.  
    12. {
    13. if(($new!='Array'))
    14. {
    15. echo "$new <br>";
    16. if(is_array($new))
    17. {
    18. foreach($new as $nnew)
    19. {
    20. echo "$nnew <br>";
    21. }
    22. }
    23. }
    24. }
    25.  
    26.  
    27. ?>
     
  2. Apple

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

    С нами с:
    13 янв 2007
    Сообщения:
    4.984
    Симпатии:
    2
    В упор не вижу слова array в массивах
     
  3. karlozzz

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

    С нами с:
    24 окт 2010
    Сообщения:
    430
    Симпатии:
    0
    Адрес:
    Y-OLA
    echo "$new <br>";
    Убери

    Он пытается вывести массив целиком, а не по элементам, интерпретатор не доволен и говорит что это Array, так и выводит
     
  4. Dima4321

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

    С нами с:
    1 апр 2009
    Сообщения:
    683
    Симпатии:
    0
     
  5. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    эх....

    PHP:
    1. <?
    2. if (!is_array($new))
    3. {
    4.     echo "$new <br>";
    5. }
    6. else
    7. {
    8.     foreach($new as $nnew)
    9.     {
    10.          echo "$nnew <br>";
    11.     }
    12. }
     
  6. karlozzz

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

    С нами с:
    24 окт 2010
    Сообщения:
    430
    Симпатии:
    0
    Адрес:
    Y-OLA
    Да, если там элементы можешь заменить на if(is_string($new)){echo "$new <br>"; }
     
  7. Dima4321

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

    С нами с:
    1 апр 2009
    Сообщения:
    683
    Симпатии:
    0
    Спасибоtommyangelo

    Забавно..а я думал , что в конструкциях if срабатывает только правда либо ложь..но не как ни вместе.))

    PHP:
    1. <?php
    2.  ini_set('display_errors',1);
    3.  error_reporting(E_ALL);
    4.  
    5.  $m=array(
    6.  array ('abba', 'beatles','bad boys'),
    7.  array ('fun', 'modern', 'c c catch'), 'blueeee', 'red', 'green',
    8.  array('day', 'bay',),
    9.  'fedor'=>'maks', 'baby');
    10.  
    11.  foreach($m as $new)
    12.  
    13.  if (!is_array($new))
    14.  {
    15.      echo "$new <br>";
    16.  }
    17.  else
    18.  {
    19.      foreach($new as $nnew)
    20.      {
    21.          echo "$nnew <br>";
    22.      }
    23.  }
    24.  
    25.    
    26.  ?>
     
  8. karlozzz

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

    С нами с:
    24 окт 2010
    Сообщения:
    430
    Симпатии:
    0
    Адрес:
    Y-OLA
    ЕСЛИ
    *условие
    ИНАЧЕ
    *условие
     
  9. Dima4321

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

    С нами с:
    1 апр 2009
    Сообщения:
    683
    Симпатии:
    0
    Твой вариант karlozzz

    Тоже работает

    PHP:
    1. <?php
    2.  ini_set('display_errors',1);
    3.  error_reporting(E_ALL);
    4.  
    5.  $m=array(
    6.  array ('abba', 'beatles','bad boys'),
    7.  array ('fun', 'modern', 'c c catch'), 'blueeee', 'red', 'green',
    8.  array('day', 'bay',),
    9.  'fedor'=>'maks', 'baby');
    10.  
    11.  foreach($m as $new)
    12.  
    13.  {
    14.  if(is_string($new))
    15.  {
    16.  echo "$new <br>";
    17.  }
    18.  if(is_array($new))
    19.  {
    20.  foreach($new as $nnew)
    21.  {
    22.  echo "$nnew <br>";
    23.  }
    24.  }
    25.  }
    26.  
    27.  
    28.    
    29.  ?>