За последние 24 часа нас посетили 17750 программистов и 1658 роботов. Сейчас ищут 945 программистов ...

вопрос по вызову функции

Тема в разделе "PHP для новичков", создана пользователем vikrorpert, 9 янв 2013.

  1. vikrorpert

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

    С нами с:
    13 окт 2010
    Сообщения:
    984
    Симпатии:
    10
    Код (Text):
    1.  
    2.  
    3. function foo()
    4. {
    5.     return array(1,2,3);
    6. }
    7.  
    8. foreach (foo() as $i)
    9.     echo $i;
    насколько так правильно делать? или лучше так
    Код (Text):
    1.  
    2. $items=foo();
    3. foreach ($items as $i)
     
  2. runcore

    runcore Старожил

    С нами с:
    12 окт 2012
    Сообщения:
    3.625
    Симпатии:
    158
    пофиг.
    все равно foreach работает с копией массива

    Добавлено спустя 1 минуту 17 секунд:
    и еще смотря что вы хотите делать внутри цикла с элементами этого массива.
     
  3. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    нельзя делать так
    Код (Text):
    1. foreach (foo() as &$i)
     
  4. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.131
    Симпатии:
    1.250
    Адрес:
    там-сям
    так как vs показал вообще лучше не делать, даже без функции ))) возможен неожиданный побочный эффект.
    работа с указателями требует особой осторожности, если есть возможность решить задачу иначе, лучше иначе.
     
  5. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    хм... Ты прав, недразумение вылетит может.
    А зачем тут это?!)

    Он вообще спросил просто...

    Код (PHP):
    1. foreach(foo() as $key => $val) {
    2. }
    3.  
    4. foreach(foo() as $key) {
    5. }