Haчинaю изyчaть PHP и xoтeлocь бы yзнaть, кaк cильнo нa пpoизвoдитeльнocть (в чacтнocти нa cкopocть paбoты cкpиптa) влияют yдaлeниe кoммeнтapиeв, лишниx пpoбeлoв и пepeвoдoв cтpoк, нeнyжныx cимвoлoв, иx зaмeнa (нaпp., <?php нa <?) и т.п.? 2) Для paбoты oднoй oпции в cкpиптe иcпoльзyeтcя пpoвepкa нa нaличиe фaйлa, тaк вoт, кaк лyчшe (кoppeктнee) этo peaлeзoвaть, чтoбы пpoвepялocь нa нaличиe фaйлa file_exists или нa eгo oтcyтcтвиe !file_exists? Или этo aбcoлютнo нe имeeт никaкoгo знaчeния?
действие выполняется одно file_exists какая разница... А зачем пробелы удалять в пхп ? Пробелы в хтмл надо убивать, чтоб быстрее страница грузилась, правда это ужасно... Зато поисковики любят без лишних пробелов -) Тебя такие странные вопросы интересуют... Надеешься сервак сильно загрузить поситителями?
Все это абсолютно не влияет на скорость работы... Не парся над такой мелочью.... Вот если у тебя запрос к базе на 30 строк, то это может повлиять на быстродействие...
нее коменты конечно не влияют, но для некоторых функций можно сделать оптимизацию - в хелпе по пхп это сразу написано. качай с офф сайта.
2nerezus может я конечно заблуждаюсь.. меньше - хеже это в смысле читабельности кода, но разьве каменты влияют сильно на скорость? 2fucker"ok я сказал про лишнее пробелы и каменты - никак это не влияет (сильно не влияет!)
<?php лучше использовать, так как бывают серверы где апач не считает короткую запись (<?)за пхп... Все это НЕсильно влияют на работу скрипта,но если рассудить логически, что нужно сделать интерпритатору: 1)Взять строку. 2)Анализировать строку Если из пунтка два можно получить комманды то: 3)Интерпритировать код 4)Выполнить комманды , которые получились из пункта три. Так вот это конечно все только приблизительно,но все же,помыслим: Интересное начинается во 2 пункте... Интрерпритатору нужно просмотреть взятую строку,если это не коментарий,то анализировать синтаксис.Значит интерпритатору нужно еще определять коментарий ли это,если например в предыдущей части взятого кода встречается "/*" то интерпритатору нужно найти символ закрывающий коментарий "*/", а это занимает процессорное время и память(нужно ведь запомнить откуда начинается коментарий). То есть теоритически,коментарии замедляют выполнение скрипта,но естественно это замедление незначительное.Но это только мое мнение,возможно ошибочное, т.к. нужно знать алгоритм работы компилятора,мы же можем только предпологать. Вопще оптимизация скриптов дело тонкое,мало что зависит от коментариев,пробелов и т.п намного больше оптимизация зависит от используемых функций зы Все выше-перечисленное ИМХО
Все, говорящие, про экономию на туалетной бумаге - идут лесом и стоят раком =) Без обид, просто есть несколько НО. 1) Оптимизация алгоритма и убирание лишних пробелов - почти одинаковое понятие, линия не четкая и не ровная между ними. Инь-Янь епть. 2) Практически у каждой функции есть ее альтернатива. Нарпимер содержание текстового файла в браузер можно вывести практически 10-ю способами. И практически никто не знает что статику намного эффективнее юзать file_get_contents() если файловая система поддерживает контенты и memory mapping или же readfile, которая не получает содержание файла, а сразу кладет его в буфер, т.е. отдает в браузер. Все же юзают include. На 1000 инклудов файла в 2 кила file_get_contents() экономит 3 секунды серверного времени. А это писек как не мало. Вот и попробуйте проверсить тут границу между оптимизацией кода и алгоритма. Использование оптимальных функций впринципе это издержки кода, но точно так же могут быть оговорены и в алгоритме. Поэтому про туалетную бумагу тут очень загнуто. Не надо путать Программирование с Web-программированием! Это 2 разные вещи! В обычном программировании вы не задумываетесь о меловчах, но в вебе вашим софтом НА ОДНОЙ ТАЧКЕ будут пользоваться миллионы пользователей. Если вы купите туалетную бумагу для себя на 10 рублей ороже чем обычно - разницы не почуете. Если же вам нужно купить туалетной бумаги на всю российскую армию, тот разница 10 рублей в цене бумаги будет очень существенной, она будет огромной!!! 3) Попробуйте в конце скрипта поставить 10 000 переносов строк. Даже самый простой скрипт будет выполняться секунд 5. Если убрать все комментарии, все лишние переносы и проьелы экономия будет, поверьте. Да и потом это просто хороший тон. Комментировать нужно не код, а алгоритм, который до этого пишется в тетради. Все равно что на машину писать аэогрофом ее характеристики. Макс скорость и прочее. Зачем? Они один раз указаны в ее документах и более не понребуются. Впринципе я могу писать еще долго, но смысла не вижу. Просто отвечу на вопрос. Если речь идет о web-программировании, то да. Даже совершенно мелкая оптимизация кода играет очень большую роль. Не стоит о этом забывать. Приведу очень простой пример. Система статистики сайтов. mail.ru, у них поряка 20 серваков все это считают и отображают. клиентов мало. Rax.ru, 1 800 000 клиентов, немеренно количество просмотров ежедневно. 1 слабенький сервак с 800 Mhz процом на борту ее обеспечивает. Поймите, я не хочу никого обидеть, не хочу ни с кем спорить. Просто если бы речь шла о правильной реализации XSS - и бы и пчку бы свою не открывал. А когда тут вот так бессмысленно и необосновано пишут про туалетную бумагу - это бред. Еще посчет file_exists(). Я тараюсь это не юзать, я делаю примерно так. if(@readfile('cash/123.html')){ echo 'Фал загружен'; }else{ echo 'Файл отсутствует на серваке.'; } Таким образом я и проверяю наличие файла и сразу елаю действие над ним. вот что это в данном случае? Оптимизация алгоритма или кода? Это моифицирование алгоритма для оптимизации кода полчается. Вообще все вопросы оптимизации - очень тонкие и нуждаются в тестировпнии. Даже я могу быть в чем то не прав, но твержо утверждать что экономить на туалетной бумаге глуппо в web масштабах - точно так же глупо =) Надеюсь, меня правильно поймут.
А вообще задавайте вопросы и даже просто обсуждениям я любым буду рад. Сам я не бог и далеко не все знаю, а общее обсуждение одного вопроса, даже оптимизаци, разные мнения и споры - это всегда полезно! Бывает мне отец, который вообще гениколог и не имеет отношения к компам никакого, а подстказывает элементарные вещи по оптимизации или по юзабилити проекта. Просто элементарные вещи, на которые я не обраащл внимания.
лишних пробелов не бывает... ведь есть Zend Optimizer и аналоги почему про него не сказано? =) ведь человек экономит на том, чего кже нету, а следовательно на этом съэкономить нельзя(т.к. нету)!
нет такого слова "нету". Это, во-первых. Во-вторых, мы говорим о web-программировании. Если на одном хостинге есть Zend optimizer а на другом нет? Да и наличие пистолета не дает тебе права полить по всем почем зря. Ты уж извени, но если у хостера есть Zend Optimizer, это еще не пово "пачкать" код лишними пробелами и переносами. Работа Zend Optimizer`а это тоже рабочее время сервера, он убирает эти пробелы, но он тоже тратит на это ресурсы сервера.
а зачем такой хостинг брать? причем VDS сейчас дешево стоят. я не знал, что оформлять код в соответствии с правилами PEAR - это значит "пачкать его". пробелов лишних нету - они убираются еще ZDE.
Погоди, погоди. nerezus. Ты не прав. Ты сейчас ведешь себя как тупой php программист, который всю жизнь работает только на Zend`овых проуктах, прочитавший какие-то книги про PEAR и прочее. Забудь ты о Zend, не существует их, она как компанияю появилась 10 лет назад от силы, что, до них не существовало программирования и web-программирования в частности? А ты видел сколько стоят их продукты? про PEAR забудь, он писал для того, чтобы ламерообразные программеры писали более-менее понятный для вопсприятия код. Другими словами чтобы в нем было легче копаться. Я не хочу тобы в моем коде кто-то копался, пишу я только для себя и знаю все свои скрипты, весь свой софт практически наизусть. мне не нужны комментарии. Если я что-то забываю и не помню зачем ставил тут проверку - открываю тетрадь и ищу запись о этом, засорять код программы местными комментами глупо. Все равно что записывать телефоны друзей на своей рубашке, так как она ближе. Есть для этого специальное место - записнуха. И вообще глупо отталкиваться от того что Zend за тебя все сделает. Автоматизация - он очень важна, сомнений ноль, но не до той степени, когда она делает людей тупыми. Я не в коем случае не говорю о тебе. Я говорю вообще. Коворю о том, что америкосы считают что картошка изначально имеет форму вытнутого прямоугольгника, что Суши растут на деревьях в японии и что великую отечественную войну побеили именно американцы и именно они взяли Берлин и лично застрелили Гитлера. А насчет хостинга, зачем покуать русскую 9-ку, если можно купить Bmw последней моификации?
почти. А до этого был cgi, в котором на прбелы положить(в компилируемых случаях) мы русские люди или нет? ну оптимайзер халявный, например. понятный код - это плохо? я же хочу работать в комманде. бумер дорогой, а VDS дешевый.