1. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

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

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

  1. slavon-x86

    slavon-x86 Well-Known Member

    Репутация:
    0
    Регистрация:
    18 дек 2005
    Сообщения:
    215
    Симпатии:
    0
    Код:
     $error;
    
    function c_string($string)
    {
    $error = $string . 'bbb';
    };
    
    check_string('aaa');
    Создаётся переменная $error, потом её надо обработать в функции c_string ! Но внутри функции не видно переменную ! Как это сделать нормально ?
     
  2. Artexoid

    Artexoid Гость

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

    GOsha Гость

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

    slavon-x86 Well-Known Member

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

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