Переменная и функция

Тема в разделе "PHP программирование", создана пользователем slavon-x86, 4 мар 2007.

  1. slavon-x86

    slavon-x86 Well-Known Member

    Регистрация:
    18 дек 2005
    Сообщения:
    216
    Симпатии:
    0
    Код (Text):
     $error;

    function c_string($string)
    {
    $error = $string . 'bbb';
    };

    check_string('aaa');
    Создаётся переменная $error, потом её надо обработать в функции c_string ! Но внутри функции не видно переменную ! Как это сделать нормально ?
     
  2. Artexoid

    Artexoid Гость

    <!--QuoteBegin-slavon-x86 @ Сегодня+ 18:44 -->
    <span class="vbquote">(slavon-x86 @ Сегодня @ 18:44 )</span><!--QuoteEBegin-->
    Код (Text):
     $error;
    function c_string($string)
    {
    $error = $string . 'bbb';
    };
    check_string('aaa');
    Создаётся переменная $error, потом её надо обработать в функции c_string ! Но внутри функции не видно переменную ! Как это сделать нормально ?[/quote]
    Не видна переменная $error я так понял? Нужно сделать так:
    Код (Text):
     $error;
    function c_string($string)
    {
    global $error;
    $error = $string . 'bbb';
    };
    check_string('aaa');
    Ну или так:
    Код (Text):
     $error;
    function c_string($string,&$error)
    {
    global $error;
    $error = $string . 'bbb';
    };
    check_string('aaa');
    В первом случае global указывает на то что $error у нас объявлена за пределами ф-ции, во 2-м $error передаётся по ссылке...
     
  3. GOsha

    GOsha Гость

    Для: slavon-x86
    Тебе правильно ответили. Только книжками не стоит пренебрегать.
    Там же почти на первой странице написано про области видимости функций, и как решать эти вопросы.
     
  4. slavon-x86

    slavon-x86 Well-Known Member

    Регистрация:
    18 дек 2005
    Сообщения:
    216
    Симпатии:
    0
    Спасибо, работает ! Я конечно же читал книгу, но не правельно понял её толкование ! Я думал что переменная должна обьявляться за пределами функции как глобальная, а оказалось немного не так ! :)
     
Загрузка...

Поделиться этой страницей