За последние 24 часа нас посетили 10510 программистов и 906 роботов. Сейчас ищут 269 программистов ...

phpstorm не видно объекта в свойстве

Тема в разделе "IDE", создана пользователем askanim, 25 июл 2018.

  1. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    PHP:
    1. class booo {
    2.     /**
    3.      * @var object;
    4.      */
    5.     private $_Result;
    6.     static public $Result = 'Хрен';
    7.  
    8.  
    9.     public function getRes() {
    10.         $this->_Result = new booo;
    11.         echo $this->_Result::$Result; // Пых штор подсвечивает это красным
    12.     }
    13. }
    14.  
    15. (new booo)->getRes();
    16. (new booo)::$Result; // А это нет )))
    17. boo::$Result;
    Причём php отрабатывает норм а netBeans не подсвечивает
     
    #1 askanim, 25 июл 2018
    Последнее редактирование: 25 июл 2018
  2. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    Ну так шторм же наверняка пояснил почему подчеркнул ;) и наверняка там фигурирует PHP7....
     
  3. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    undefined variable да он написал что не определено
     
  4. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    Вставил код себе выделил он и (new booo)::$Result; (светлым фоном) а подчеркнул только в первом случае со словами "Unform variable syntax is available in PHP7 only..."
    А вообще зачем к статической переменной класса обращаться через объект?
     
  5. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    А так разве можно? (->self)
    И все же зачем так сложно? просто self::$Result
     
  6. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    Хорошо давай не так
     
  7. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.291
    Симпатии:
    216
    Адрес:
    Default city
    Еба..
    PHP:
    1. obj->{obj::$property}
     
  8. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    А я тебе не тот скрин показал.
    Вот:
    214124.png
     
  9. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    Почем не просто

    PHP:
    1. public function getRes() {
    2.    return self::$Result;
    3. // или в зависимости от ситуации retrun static::$Result
    4. }
    --- Добавлено ---
    [Зануда моде он]
    PSR полиция негодуэ :)
    static public$Result='Хрен';
    [Зануда моде офф]
     
  10. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    Ща покажу
    --- Добавлено ---
    PHP:
    1. class Get {
    2.     static $Result = 'Привет вася ты получаешь мои данные';
    3. }
    4. class Upload {
    5.     static $Result = 'Привет ты загружаешь мои данные';
    6. }
    7. class Delete {
    8.     static $Result = 'Ты удаляешь мои данные';
    9. }
    10. class handler {
    11.     private $getObj;
    12.     private $uploadObj;
    13.     private $delObj;
    14.     private function get() {
    15.         echo $this->getObj::$Result;
    16.         /**
    17.          * to do
    18.          */
    19.     }
    20.     public function hand($type) {
    21.         switch ($type) {
    22.             case 'upload':
    23.                 $this->uploadObj = new Upload();
    24.                 break;
    25.             case 'delete':
    26.                 $this->delObj = new Delete();
    27.                 break;
    28.             case 'get':
    29.                 $this->getObj = new Get();
    30.                 $this->get();
    31.         }
    32.         return $this;
    33.     }
    34. }
    35.  
    36. (new Handler)->hand('get');
    --- Добавлено ---
    И это была тема не для вопроса. А это было просто сказано что пых шторм не видит переменную и подсвечивает её типа не существует.
    И ни как не указать комментарием чтобы он её увидел в таком вот виде. Но сам по себе пых работает таким образом. Какая разница для чего это так просто пофлудить?
    --- Добавлено ---
    мозг твой негодуэ.
     
  11. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    Ну извини коли задел нежные чувства.
    По теме. Да как ты описал в первом посту так и происходит.

    Пофлудить.... Хм. А ты зачем создал тему, и зачем здесь вообще кто-то что то пишет? Почему бы на конкретном примере не обсудить, что и как по феншую делать... В прочем нет так нет - молчу.


    Мне на самом деле все равно.. Просто как то кто то за PSR чихвостил другой проект....
    --- Добавлено ---
    Блин, какие все нежные стали. Любое слово воспринимают как наезд или покушение на профпригодность.
     
  12. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.474
    Симпатии:
    329
    @askanim, а если так:
    PHP:
    1. class handler {
    2.     /**
    3.      *
    4.      * @var Get
    5.      */
    6.     private $getObj;
    7.     /**
    8.      *
    9.      * @var Upload
    10.      */
    11.     private $uploadObj;
    12.     /**
    13.      *
    14.      * @var Get
    15.      */
    16.     private $delObj;
    17.  
    18. // remaining code
    19.  
    20. }
     
  13. askanim

    askanim Старожил

    С нами с:
    7 апр 2016
    Сообщения:
    2.200
    Симпатии:
    166
    Адрес:
    GABRIEL
    @Sail неа так тоже не проходит.
    --- Добавлено ---
    это не нежность ты просто несёшь какой-то бред в этот тред.
    --- Добавлено ---
    Сто% у меня в проекте так и написано. Вы угадали! Крутите барабан! ...шух...шух.... Сектор приз на барабане!
    --- Добавлено ---
    @voral я скинул пример набросанный за минуту, на коленке. Чтобы показать, что phpstorm подсвечивает красным, а пых отрабатывает нормально. (Специально для тебя разжевал ещё разок) Между тем нетбинс показывает, что всё гуд. (и ещё чуть чуть) И это в ТС написано! Какая разница что это и куда?
    При чём тут psr и вообще? Я дальше могу чих пыхать на весь форум про стандарты psr. (только времени нет на это)
    Потому что это нормально быть разработчиком и применять эти стандарты. И если человек хочет быть разрабом он должен их применять и знать.
     
  14. voral

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

    С нами с:
    30 ноя 2017
    Сообщения:
    646
    Симпатии:
    104
    Расслабься уже. Оставь себе свои призы.
    Про PSR вообще было в зануд моде - просто на правах офтопика и не "требовало" ни какой реакции и обсуждения.