За последние 24 часа нас посетили 35526 программистов и 1819 роботов. Сейчас ищут 837 программистов ...

Изменение переменных из функции

Тема в разделе "PHP для новичков", создана пользователем UFO_, 11 апр 2012.

  1. UFO_

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

    С нами с:
    29 фев 2012
    Сообщения:
    17
    Симпатии:
    0
    Здравствуйте, подскажи как лучше сделать изменение переменных из функции.
    Нашел только способ через global. Если другой способ? Насколько хорош метод через global?
    Код (Text):
    1. <?php
    2. $var_name1 = 10;
    3. $var_name2 = 20;
    4. $var_name3 = 30;
    5.  
    6. function change($var){
    7.  global $var_name1, $var_name2,$var_name3;
    8.  $var_name1+=$var;
    9.  $var_name2-=$var;
    10.  $var_name3+=$var;
    11. }
    12.  
    13.  
    14. ?>
     
  2. html-программист

    html-программист Активный пользователь

    С нами с:
    10 фев 2012
    Сообщения:
    831
    Симпатии:
    4
    Адрес:
    Kiev
    Код (PHP):
    1. <?php
    2. function foo(&$var)
    3. {
    4.     $var++;
    5. }
    6.  
    7. $a=5;
    8. foo($a);
    9. // $a здесь равно 6
    10. ?>
    http://www.php.ru/manual/language.references.pass.html
     
  3. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    массив? =)
     
  4. html-программист

    html-программист Активный пользователь

    С нами с:
    10 фев 2012
    Сообщения:
    831
    Симпатии:
    4
    Адрес:
    Kiev
    Может кто заодно подскажет, что глобальным делать в таком примере?

    Код (PHP):
    1. <?php
    2. for($i=0;$i<3;$i++){
    3.     $var_name="var_name".$i+1;
    4.     $$var_name=($i+1)*10;
    5. }
    6. function change($var){
    7.     global $var_name; // или global $$var_name;?
    8.     $var_name1+=$var;
    9.     $var_name2-=$var;
    10.     $var_name3+=$var;
    11. }
    12. ?>
     
  5. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    на вид - ничего =)