За последние 24 часа нас посетили 15687 программистов и 1542 робота. Сейчас ищут 852 программиста ...

Комментарии к функциям

Тема в разделе "PHP для новичков", создана пользователем VLK, 3 май 2014.

  1. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Вот смотрите, если я используя тот или иной редактор кода, ввожу встроенную функцию мне сразу выводит описание данной функции ( http://s52.radikal.ru/i137/1405/58/26c169fda65c.jpg ), а можно как нибудь комментировать собственные функции что бы к ним отображалось подобное описание?
     
  2. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Да. Есть такая штука, называется PHPDoc. Выглядит примерно вот так:
    Код (PHP):
    1.     /**
    2.      * Registration form
    3.      * @return \Illuminate\View\View
    4.      */
    5.     public function getRegistration()
    6.     {
    7.         return \View::make('auth.registration');
    8.     }
    9.  
    Нормальная IDE должна это цеплять и выдавать подсказки.
    http://www.phpdoc.org/docs/latest/index.html
     
  3. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Спасибо.

    А можете написать как правильно за комментировать обыкновенную переменную, а то у меня в IDE (NetBeans IDE 7.4) пишет что не найден документ, пишу так:

    Код (Text):
    1. /**
    2. * @var string $str строковая переменная
    3. */
    4. $str = "строка";
    или так:
    Код (Text):
    1. /**
    2. * строковая переменная
    3. * @var string $str
    4. */
    5. $str = "строка";
    и еще 500 разных вариантов, но ни чего не помогает.
     
  4. Ke1eth

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

    С нами с:
    16 мар 2012
    Сообщения:
    1.073
    Симпатии:
    11
    Адрес:
    заблудилса
    Позволю себе спросить: а для чего?
    функции документировать - понятно, а переменную зачем? Имя оной и есть ее документация.
     
  5. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Переменные и не подлежат документированию подобному.
     
  6. Chushkin

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

    С нами с:
    17 дек 2010
    Сообщения:
    1.062
    Симпатии:
    91
    Адрес:
    Мещёра, Центр, Болото N3
    В PHPStorm всё работает.
    Типа:
    Код (Text):
    1.     /** Часовой пояс (+/- минут) @var int */
    2.     public $TZ;
     
  7. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Я просто поискал по интернету про PHPDoc нашел пару сайтов, на одном из них документировалась переменная, вот я и решил, что так должно быть.
     
  8. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Мб не переменная, а свойство класса? Это немного разные вещи.
     
  9. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Там была просто переменная, ну вообщем то не важно, я уже понял что переменную комментировать не надо :)
     
  10. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Есть силы - комментируй.
     
  11. Chushkin

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

    С нами с:
    17 дек 2010
    Сообщения:
    1.062
    Симпатии:
    91
    Адрес:
    Мещёра, Центр, Болото N3
    "Всё хорошо, что в меру" (с)
    igordata прав, - надо, когда надо.

    А вот с PHPDoc @var не всё одназначно :(
    Выше я утверждал, что всё работает, но я был не прав. Работает только для свойств объекта. Для переменной можно указать только тип (/** @var string $myVar */ ), описание не подхватывается/показывается.
    п.с.
    Кстати, даже на официальном сайте в @var нет описания (глюк, конечно, но...).
     
  12. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Вот и я о том.
     
  13. Chushkin

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

    С нами с:
    17 дек 2010
    Сообщения:
    1.062
    Симпатии:
    91
    Адрес:
    Мещёра, Центр, Болото N3
    Угу, каюсь.
    Не подумал, что может быть разное поведение, вот и ляпнул, не проверивши. А потом проверил.