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

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

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

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

icq: 358-799-007
skype: LeoGigRu
По умолчанию

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

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

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

Принцип работы сайта был такой:
  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
Репутация: 606
По умолчанию

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

icq: 212307232
По умолчанию

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

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

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

icq: 358-799-007
skype: LeoGigRu
По умолчанию

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

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

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как совместить эти 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


05:21.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.