Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Хранение функции в файле
Покинул форум
Сообщений всего: 6
Дата рег-ции: Июль 2011
Помог: 0 раз(а)
Собираясь гуглить думал, что быстренько найду ответ на свой вопрос. Наверняка не я первый этим интересуюсь. Но как-то пусто оказалось, может не так искал.. В общем, у меня вопрос:
Можно ли описать функцию в отдельном файле и потом по мере надобности использовать её из этого файла в других php-скриптах? Думаю понятно для чего это, - чтобы уменьшить количество кода. (Добавление)
Хех Только создал тему, вернулся к коду и сам разобрался))
Через функцию include() всё без проблем делается. Создаёшь файл с описанием функции и потом его подключаешь, - всё можно использовать функцию.
А у меня сначала не получилось потому что я в файле не поставил тег <?php... ?>
foozzi
Отправлено: 19 Июля, 2011 - 08:49:23
Посетитель
Покинул форум
Сообщений всего: 283
Дата рег-ции: Май 2011 Откуда: rm -rf /
Помог: 0 раз(а)
это очень банально )
я никогда не поверю что описание правила для инклуда не описываются в поисковиках)
Покинул форум
Сообщений всего: 128
Дата рег-ции: Апр. 2010
Помог: 1 раз(а)
Кстати разрешение подключаемого файла не обязательно должно быть *.php.
Можете сделать свое, только эти файлы тогда должны быть не в главной папке сайта, для безопасности.
_________
А еще и сам хотел спросить?
Кто подскажет какой метод и когда лучше для подключения:
include('file.xxx'), require('file.xxx') или readfile('file.xxx') ?
foozzi пишет:
не описываются в поисковиках)
в поисковиках нечего не описывается, опысывается в сайтах которые они выдают
----- Если все время идти вперед, до цели будет немного ближе..
White
Отправлено: 19 Июля, 2011 - 21:11:00
Частый посетитель
Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011 Откуда: Днепропетровск
Помог: 28 раз(а)
alxfro
а где в вашем примере ооп?
Slavenin правильно говорит, для библиотек функций и классов наиболее правильно использовать require_once(). Это избавит от ошибок, так как код включаемого файла не будет выполняться а лишь переноситься в скрипт, и будет ли библиотека включена до или после использования описанных в ней функций не будет иметь значения.
----- if(time()>1356048000) die();
alxfro
Отправлено: 19 Июля, 2011 - 21:19:02
Частый гость
Покинул форум
Сообщений всего: 208
Дата рег-ции: Июль 2011
Помог: 0 раз(а)
White пишет:
alxfro
а где в вашем примере ооп?
а я ни слова ни говорил про ООП, заметь
я просто показал пример как хранить и вызывать функции, как и спросил автор
я разве что-то сказал про ООП?
White
Отправлено: 19 Июля, 2011 - 21:27:16
Частый посетитель
Покинул форум
Сообщений всего: 830
Дата рег-ции: Июнь 2011 Откуда: Днепропетровск
Помог: 28 раз(а)
alxfro
обьекты и классы использованные в вашем примере являются составными частями ооп. тем не менее в данном примере они не несут абсолютно никакой смысловой нагрузки, а лишь:
1. Усложняют метод вызова функций
2. Усложняют код
3. Сужают возможность его использования до контекста существования объекта
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.