

Собственные функции на php
Автор arsenal, 22 июня 2013 15:33
Сообщений в теме: 10
#1
Отправлено 22 Июнь 2013 - 15:33
В каком файле и где можно хранить собственные функции на php, чтобы потом их использовать при написании вычислений? И чтобы при обновлении ревизии они не потерялись.
#2
Отправлено 24 Июнь 2013 - 08:48
В файле include/functions_custom.php. Файл подключается автоматически.
#3
Отправлено 28 Июнь 2013 - 20:24
Написал простую функцию, которая преобразует дату из поля типа "дата" (переменная $date1) в формат вида "___" мая 2013г. или другой (в зависимости от значение переменной $format). Это используется в шаблоне договора.
Если функцию сохранить в файле functions1.php, то все работает нормально.
Что не так?
function formatDatePropis($format, $date1) { switch (substr($date1, 5, 2)) { case "01": $mounth = "января"; break; case "02": $mounth = "февраля"; break; case "03": $mounth = "марта"; break; case "04": $mounth = "апреля"; break; case "05": $mounth = "мая"; break; case "06": $mounth = "июня"; break; case "07": $mounth = "июля"; break; case "08": $mounth = "августа"; break; case "09": $mounth = "сентября"; break; case "10": $mounth = "октября"; break; case "11": $mounth = "ноября"; break; case "12": $mounth = "декабря"; break; } switch ($format) { case "__.ММ.ГГГГ": $date_for_print = "\"___\" ".$mounth." ".substr($date1, 0, 4)."г."; break; case "__.__.ГГГГ": $date_for_print = "\"___\" __________ ".substr($date1, 0, 4)."г."; break; case "__.__.ГГ__": $date_for_print = "\"___\" __________ ".substr($date1, 0, 2)."___г."; break; default: $date_for_print = "\"".substr($date1, 8, 2)."\" ".$mounth." ".substr($date1, 0, 4)."г."; } return $date_for_print; }Сохранил функцию в файле include/functions_custom.php. Однако при использовании этой функции в вычислении, дата, например, 26.05.2013 преобразуется в "26", а должна в "___" мая 2013г.
Если функцию сохранить в файле functions1.php, то все работает нормально.
Что не так?
Сообщение отредактировал arsenal: 28 Июнь 2013 - 20:25
#4
Отправлено 29 Июнь 2013 - 12:18
Во-первых, вы зря писали для этого свою функцию, т.к. она уже есть.
Во-вторых, дело скорее всего не в том, где вы ее сохраняете (это не может никак влиять на результат), а в том, какие параметры вы туда задаете.
Советую воспользоваться встроенным функционалом.
Во-вторых, дело скорее всего не в том, где вы ее сохраняете (это не может никак влиять на результат), а в том, какие параметры вы туда задаете.
Советую воспользоваться встроенным функционалом.
#5
Отправлено 30 Июнь 2013 - 13:01
все таки хочется разобраться.
В одном и том же вычислении функция выдает разные результаты, в зависимости от того, в каком файле ее сохранить.
В одном и том же вычислении функция выдает разные результаты, в зависимости от того, в каком файле ее сохранить.
#6
Отправлено 12 Июль 2013 - 06:38
Дело оказалось в неправильной кодировке файла
#7
Отправлено 28 Апрель 2014 - 16:55
Накосячил. 
В файле functions_custom.php допустил синтаксическую ошибку по невнимательности, поспешил и точку с запятой поставил где не надо. Теперь на любой странице вижу только сообщение
В том числе, теперь не могу попасть и на ту страницу, через которую можно редактировать этот файл functions_custom.php - конфигурация и менеджер файлов теперь тоже стали недоступны (видно только сообщение об ошибке). Что можно сделать теперь?

В файле functions_custom.php допустил синтаксическую ошибку по невнимательности, поспешил и точку с запятой поставил где не надо. Теперь на любой странице вижу только сообщение
Цитата
Parse error: syntax error, unexpected ';', expecting ')' in /home/test51/public_html/include/functions_custom.php on line 27
#8
Отправлено 28 Апрель 2014 - 16:59
Если речь про аккаунт на saas, отправьте заявку в техподдержку, вам восстановят доступ. В остальных случаях вы сами можете исправить, открыв файл напрямую.
#9
Отправлено 28 Апрель 2014 - 17:05
Ясно, спасибо. Да, речь про saas-аккаунт.
#10
Отправлено 28 Апрель 2014 - 17:18
А не знаете, что написать в полях "Номер версии" и "Ревизия"? А то они обязательны для заполнения в форме заявки в тех.поддержку, но посмотреть сейчас какая версия и ревизия не могу из-за той всё же ошибки
#11
Отправлено 28 Апрель 2014 - 23:19
OlegSmirnov (28 Апрель 2014 - 17:18) писал:
А не знаете, что написать в полях "Номер версии" и "Ревизия"? А то они обязательны для заполнения в форме заявки в тех.поддержку, но посмотреть сейчас какая версия и ревизия не могу из-за той всё же ошибки
Количество пользователей, читающих эту тему: 3
0 пользователей, 3 гостей, 0 анонимных