Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 29.06.2010, 09:28   #1
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию Оптимизация PHP-скрипта: Что быстрее function или include?

По поводу оптимизации и скорости работы include в сети много материала, а вот по function практически ничего, поэтому возник достаточно простой вопрос: что быстрее выполняется function или include и идентичным содержанием?
Виталий Желтяков вне форума Ответить с цитированием
Старый 29.06.2010, 09:36   #2
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

по моим иследованиям подключение файла с чем либо (но не выполняемый код) занимает около 0,004 сек. быдь так функции или классы. выводы делайте сами, а проще засечь самому.
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 29.06.2010, 09:51   #3
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

По поводу подключения файлов Я знаю. А что по поводу функций - как они влияют на быстродействие при интерпритации (не при исполнении - там всё понятно)?
Виталий Желтяков вне форума Ответить с цитированием
Старый 29.06.2010, 21:10   #4
rlevv
Пользователь
 
Регистрация: 27.04.2010
Сообщений: 15
По умолчанию

Еще многое зависит от сервака (типо линуха или винда)
А вообще я с такими вещами один раз на работе столкнулся когда ставил на сервер сайт написаный на битриксе:

Принцип работы сайта был такой:
  1. Пользователь отправлял запрос (типо www.мой сайт.ru)
  2. Сервер запускал php
  3. Далее так как нужен был php не такой как на сервере запускался cgi скрипт с мои php
  4. Он считывал мой php и выполнял его (примерно фаил с php весит 15 мб)
  5. И уже на нем производилось выполнение сайта на битрикс (а это еще примерно 20 мб обработки файлов + самих файлов штук 50-100 и все это на вертуальной машине
  6. На сервере выделялось строгое число оперативки 32 мб
  7. Страници собирались за 0.4 сек
А вы еще выбираете между функцией и файлом))
Безусловно можно весь скрипт сайта запихнуть в один фаил вот только этот фаил будет как Война и мир)))
rlevv вне форума Ответить с цитированием
Старый 30.06.2010, 07:49   #5
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

Цитата:
Безусловно можно весь скрипт сайта запихнуть в один фаил вот только этот фаил будет как Война и мир)))
Я в своё время писал проги для банковских отчетов и поэтому "Война и мир" меня не пугает, как-то привычно.
Кто-нибудь всё таки знает ответ на вопрос: Как PHP обрабатывает пользовательские функции при интерпретации?
Виталий Желтяков вне форума Ответить с цитированием
Старый 30.06.2010, 10:29   #6
ssdm
Форумчанин
 
Регистрация: 20.05.2009
Сообщений: 506
По умолчанию

Цитата:
что быстрее выполняется function или include и идентичным содержанием?
Ваша функция ничего не возврашает(то есть процедура) ?
Кажется мне что function быстрее, ибо это логичнее, чем инклюд быстрее функций.
ssdm вне форума Ответить с цитированием
Старый 30.06.2010, 13:04   #7
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
что быстрее выполняется function или include и идентичным содержанием?
Я правильно понимаю, что вы сравниваете автомобиль и Феррари?
Или если перефразировать, то "что быстрее, автомобиль или перевозчик автомобилей с этим автомобилем на горбу?"
Johnatan вне форума Ответить с цитированием
Старый 30.06.2010, 19:43   #8
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

Функции подключаются сразу, include при необходимости. При этом получается, что если использовать функции, то они будут все разом, а если include, то только необходимые. По include известны примерные скорости, а про пользовательские функции ничего.
Возникает очередной вопрос:
Как PHP обрабатывает пользовательские функции при интерпретации?
Виталий Желтяков вне форума Ответить с цитированием
Старый 01.07.2010, 03:15   #9
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Цитата:
Сообщение от Виталий Желтяков Посмотреть сообщение
Функции подключаются сразу, include при необходимости. При этом получается, что если использовать функции, то они будут все разом, а если include, то только необходимые.
тогда проще делать ОПП: классы и автозагрузчик. грамматно сделанная система просто "летает".
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 01.07.2010, 23:18   #10
Seneka
Новичок
Джуниор
 
Регистрация: 01.07.2010
Сообщений: 1
По умолчанию

Смотря что в function и что в include. Если аналогичный функционал - то функция быстрее хотя-бы из-за того что в отличие от include не надо зачитывать файл с диска, а это лишние fopen... fread... fclose по любому, и время на это увеличивается с увеличением размера файла. А вообще xDebug вам в руки и смотрите профайл - все вопросы отпадут
Seneka вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как совместить эти 2 скрипта, или что необходимо подправить? МIX JavaScript, Ajax 0 19.12.2009 10:03
Что быстрее?! Dimedrolum Общие вопросы C/C++ 5 14.10.2009 11:57
Что лучше изучать Php или javascript? Arassir PHP 15 14.07.2009 19:21
Оптимизация DelphiX ? ...или что выбрать. KorDum Gamedev - cоздание игр: Unity, OpenGL, DirectX 13 30.06.2009 14:39
что перспективнее, perl или php? dexter182 PHP 6 28.05.2009 11:51


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS