получить список всех пользовательских функций

Всё, что не подходит под вышеперечисленные разделы

Модератор: immortal

Ответить
Аватара пользователя
Vovix
Сообщения: 1149
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 58 раз
Поблагодарили: 489 раз
Контактная информация:

получить список всех пользовательских функций

Сообщение Vovix » Вт фев 06, 2018 10:20 pm

В порядке самообразования, ну и так вдруг кому пригодиться, так можно получить список всех функций PHP заданных пользователем, т.е. это не только функции, которые вы сами подключили в систему в здравом уме и твердой памяти, но и те которые сделаны в MDM нашими замечательными разработчиками!
Может кому пригодиться, ну например, что-бы не создавать, случайно, свою функции с имеющимся именем или еще зачем!!!
Получить список можно записав этот код например в сценарий (скрипт) и запустив вручную, результат увидите на отдельной странице в браузере в четыре столбика (и да тут просто имена функции со сквозной нумерацией и не более):

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

//Запишем все доступные функции в переменную 
$arr=get_defined_functions(); 
// Отсортируем по алфавиту для читабельности 
sort($arr['internal']); 
sort($arr['user']);

$i=1;
echo ('<table><tr>');
foreach ($arr['user'] as $key => $name ) {
   echo ('<td>'.$key.' --> '.$name.'&nbsp;&nbsp;</td>');
   if (!($i%4)) {
    echo ('</tr><tr>'); 
   }
 $i++;  
}
if ($i%4) {echo ('</tr>');}
echo ('</table>');
для примера так у меня:
СпойлерПоказать
0 --> addclass 1 --> addclassmethod 2 --> addclassobject 3 --> addclassproperty
4 --> addlinkedproperty 5 --> addpattern 6 --> addscheduledjob 7 --> ask
8 --> binarytostring 9 --> callmethod 10 --> callmethodsafe 11 --> callscript
12 --> check_for_number 13 --> checkaccess 14 --> checkbadwords 15 --> checkemail
16 --> checkfile 17 --> checkfromcache 18 --> checkgeneral 19 --> checkpassword
20 --> clearcache 21 --> clearpropertiescache 22 --> clearscheduledjob 23 --> cleartimeout
24 --> cm 25 --> colorizearray 26 --> context_activate 27 --> context_activate_ext
28 --> context_clear 29 --> context_get_history 30 --> context_getcurrent 31 --> context_getuser
32 --> context_timeout 33 --> convertpressure 34 --> copyfile 35 --> copynewfile
36 --> copytree 37 --> createdir 38 --> createhistorytable 39 --> datediffv
40 --> dbsafe 41 --> debmes 42 --> deleteobject 43 --> deletescheduledjob
44 --> dscryptv 45 --> endmeasure 46 --> execinbackground 47 --> findmyiphone
48 --> fromdbdate 49 --> fromxml 50 --> genpassword 51 --> getchildren
52 --> getclassproperties 53 --> getclasstemplate 54 --> getdirtree 55 --> getfilestree
56 --> getfreezepossibility 57 --> getglobal 58 --> gethistory 59 --> gethistoryavg
60 --> gethistorycount 61 --> gethistorymax 62 --> gethistorymin 63 --> gethistorysum
64 --> gethistoryvalue 65 --> gethistoryvalueid 66 --> getkeydata 67 --> getlocaltime
68 --> getlogger 69 --> getmicrotime 70 --> getnumberword 71 --> getobject
72 --> getobjectclasstemplate 73 --> getobjectsbyclass 74 --> getobjectsbyproperty 75 --> getrandomline
76 --> getroomobjectbylocation 77 --> geturl 78 --> geturlbackground 79 --> getuserobjectbytitle
80 --> getvalueidbyname 81 --> getwinddirection 82 --> getxmltree 83 --> gg
84 --> googletts 85 --> hexstringtoarray 86 --> hexstringtostring 87 --> injectobjectmethodcode
88 --> is_dir2 89 --> isonline 90 --> isweekday 91 --> isweekend
92 --> iswindowsos 93 --> keeplatestlimitedbysize 94 --> laurent_command 95 --> laurent_getstat
96 --> loadfile 97 --> locktomyiphone 98 --> makedir 99 --> makepayload
100 --> messagetomyiphone 101 --> movedatafrommainhistorytotable 102 --> movedatafromtabletomainhistory 103 --> multiplearrayselect
104 --> mysort_array 105 --> objectclasschanged 106 --> outarray 107 --> outhash
108 --> padezhv 109 --> paging 110 --> performancereport 111 --> php_syntax_error
112 --> ping 113 --> playmedia 114 --> playsound 115 --> posttotwitter
116 --> posttowebsocket 117 --> posttowebsocketqueue 118 --> preparepathtime 119 --> processcommand
120 --> processline 121 --> processlines 122 --> processsubscriptions 123 --> processtitle
124 --> reclocaltime 125 --> recognizetime 126 --> redirect 127 --> registeredeventtime
128 --> registererror 129 --> registerevent 130 --> remove_old_files 131 --> removeemptysubfolders
132 --> removelinkedproperty 133 --> removemissingsubscribers 134 --> removetree 135 --> return_memory_usage
136 --> rs 137 --> runmethod 138 --> runscheduledjobs 139 --> runscript
140 --> runscriptsafe 141 --> safe_exec 142 --> savefile 143 --> savetocache
144 --> say 145 --> sayreply 146 --> sayto 147 --> sendmail
148 --> sendmail_html 149 --> setglobal 150 --> setlocaltime 151 --> settimeout
152 --> sg 153 --> simplisticerrorhandler 154 --> sms 155 --> soundtomyiphone
156 --> sqlexec 157 --> sqlgetfields 158 --> sqlgetindexes 159 --> sqlinsert
160 --> sqlinsertupdate 161 --> sqlping 162 --> sqlselect 163 --> sqlselectone
164 --> sqlupdate 165 --> sqlupdateinsert 166 --> startmeasure 167 --> stripit
168 --> subscribetoevent 169 --> text_to_number 170 --> texttonumbers 171 --> timeafter
172 --> timebefore 173 --> timebetween 174 --> timeconvert 175 --> timeis
176 --> timenow 177 --> timeoutexists 178 --> timezone_offset_string 179 --> todbdate
180 --> toxml 181 --> transliterate 182 --> unsubscribefromevent 183 --> utf2win
184 --> utf_encode 185 --> verbose_log 186 --> walk_dir 187 --> walk_dir2
188 --> win2utf 189 --> xmltreetoarray 190 --> yandextts
За это сообщение автора Vovix поблагодарили (всего 11):
olehs (Вт фев 06, 2018 10:45 pm) • xor (Ср фев 07, 2018 1:18 am) • alt.Maksimus (Ср фев 07, 2018 5:23 am) • Amarok (Ср фев 07, 2018 6:04 am) • lanket (Ср фев 07, 2018 1:10 pm) • sergejey (Вс фев 11, 2018 9:59 am) • directman66 (Пн фев 12, 2018 9:23 am) • Logrus (Сб фев 24, 2018 1:00 am) • odinvolk (Сб апр 21, 2018 2:52 pm) • dmw (Вт май 22, 2018 2:03 pm) и ещё один
Рейтинг: 13.92%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Аватара пользователя
nick7zmail
Сообщения: 6752
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 119 раз
Поблагодарили: 1668 раз

Re: получить список всех пользовательских функций

Сообщение nick7zmail » Ср фев 07, 2018 9:02 am

Надо такие штуки в Вики заносить...или в новую базу знаний лучше...тема на форуме тупо затеряется.
За это сообщение автора nick7zmail поблагодарил:
lanket (Ср фев 07, 2018 1:10 pm)
Рейтинг: 1.27%
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
Vovix
Сообщения: 1149
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 58 раз
Поблагодарили: 489 раз
Контактная информация:

Re: получить список всех пользовательских функций

Сообщение Vovix » Ср фев 07, 2018 9:39 am

nick7zmail писал(а):Надо такие штуки в Вики заносить...или в новую базу знаний лучше...тема на форуме тупо затеряется.
я у себя в CONNECT сделал блог первый - https://connect.smartliving.ru/profile/136/blog17.html
а в нем как раз ссылка - ----> ВСЕ созданные мной, через поиск на форуме
За это сообщение автора Vovix поблагодарил:
odinvolk (Сб апр 21, 2018 2:57 pm)
Рейтинг: 1.27%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Аватара пользователя
nick7zmail
Сообщения: 6752
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 119 раз
Поблагодарили: 1668 раз

Re: получить список всех пользовательских функций

Сообщение nick7zmail » Ср фев 07, 2018 10:08 am

Дак это ж сколько надо сделать, чтоб найти))
А если новичок не знает имя автора, и тем более не знает, что в блоги какие-то лезть надо? Как быть?)) Всё, без инфв останется?))
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить