Программно инициализировать метод

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Программно инициализировать метод

Сообщение Gelezako » Пт апр 20, 2018 3:40 pm

nick7zmail писал(а):
Пт апр 20, 2018 3:36 pm
Да в принципе есть...идём в /lib/objects.class.php и дописываем по-аналогии с другими функциями. Только надо чётко определить что вы на входе хотите, что на выходе. При желании можно доработать addclassproperty, чтобы onchange заполнил если будет указан какой либо параметр.
как я представляю, на входе имя класса, имя свойства и метод. Результат: прилинкованный метод к свойству.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Программно инициализировать метод

Сообщение Gelezako » Пт апр 20, 2018 3:42 pm

directman66 писал(а):
Пт апр 20, 2018 3:37 pm
Ура, взлетело
Отлично!

Я так понял модуль пишешь для работы с GPS? Ещё ни где не описывал функционал? Очень интересно, мне тоже надо придумать как координаты передавать с автономного GPS передатчика.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Программно инициализировать метод

Сообщение directman66 » Пт апр 20, 2018 3:59 pm

Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Программно инициализировать метод

Сообщение directman66 » Пт апр 20, 2018 5:52 pm

Столкнулся со сбоем плагина, когда одна функция вызывает другую функцию.

В файле https://github.com/directman66/majordom ... .class.php
как только раскоментирую строку 391

Код: Выделить всё

//$smadr=ga('56.836498','60.691435' ); 
модуль уходит в себя. Как будто он не может вызвать соседскую функцию.

Код: Выделить всё

function ga($x,$y)
{return "ok";}
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Программно инициализировать метод

Сообщение Gelezako » Пт апр 20, 2018 7:26 pm

directman66 писал(а):
Пт апр 20, 2018 5:52 pm
Столкнулся со сбоем плагина, когда одна функция вызывает другую функцию.

В файле https://github.com/directman66/majordom ... .class.php
как только раскоментирую строку 391

Код: Выделить всё

//$smadr=ga('56.836498','60.691435' ); 
модуль уходит в себя. Как будто он не может вызвать соседскую функцию.

Код: Выделить всё

function ga($x,$y)
{return "ok";}
1. Настоятельно рекомендую давать "говорящие" имена функциям. Имя функции из 2х букв - это ужос. Подумайте о других кто будет читать ваш код.
2. Я не эксперт в пхп, но какую задачу решает эта функция ga() ? Она же бесполезна.
Последний раз редактировалось Gelezako Пт апр 20, 2018 10:15 pm, всего редактировалось 1 раз.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Программно инициализировать метод

Сообщение directman66 » Пт апр 20, 2018 7:28 pm

Это пример, настоящая функция, которую нужно вызвать называется getaddrfromcoord($x,$y)
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Программно инициализировать метод

Сообщение fandaymon » Пт апр 20, 2018 7:37 pm

directman66 писал(а):
Пт апр 20, 2018 5:52 pm
Столкнулся со сбоем плагина, когда одна функция вызывает другую функцию.

В файле https://github.com/directman66/majordom ... .class.php
как только раскоментирую строку 391

Код: Выделить всё

//$smadr=ga('56.836498','60.691435' ); 
модуль уходит в себя. Как будто он не может вызвать соседскую функцию.

Код: Выделить всё

function ga($x,$y)
{return "ok";}
Я конечно не специалист, но похоже у вас на строчке 578 лишняя скобка...
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Программно инициализировать метод

Сообщение directman66 » Пт апр 20, 2018 8:06 pm

578 скобка закрывает класс class livegpstracks extends module {

Иначе бы оно вообще не работало.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
fandaymon
Сообщения: 1553
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 39 раз
Поблагодарили: 574 раза

Re: Программно инициализировать метод

Сообщение fandaymon » Пт апр 20, 2018 8:26 pm

directman66 писал(а):
Пт апр 20, 2018 8:06 pm
578 скобка закрывает класс class livegpstracks extends module {

Иначе бы оно вообще не работало.
Ммм... Тогда наверное надо указывать, что вызванная функция принадлежит классу, может быть $this->ga('56.836498','60.691435' ); отработает?
directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Программно инициализировать метод

Сообщение directman66 » Пт апр 20, 2018 8:47 pm

Там же в классе полно других функций, которые вызываются вроде без ссылки на самого себя. Я сейчас с телефона, детей укладываю, уже не проверить.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Ответить