Читая форум php...

Вурдалак

Продвинутый новичок
Там мне мои знания о том, что:
PHP:
<?php 
$amount = count($array);
for ($i=0; $i<$amount; ++$i) {
}
?>
Лучше чем:
PHP:
<?php 
for ($i=0; $i<count($array); ++$i) {
}
Второй вариант наоборот лучше. В общем, иди в верстальщики, всем лучше будет.
 

Василий М.

Новичок
У нас из того, что я видел, требуется виртуозное и быстрое умение настраивать компоненты и плагины в конкретной CMS, лишь изредка работая с её API.
ключевое слово я выделил жирным

Только я понимаю, что на это уйдёт много времени, притом не факт, что я найду где это применить
в конторе ЗАО "рога и копыта" конечно не найдешь!

Ну и новичкам которые пишут, с чего начать изучать php, я бы посоветовал ещё сразу какую-нибудь CMS осваивать и учиться с ними работать
ЗАО "рога и копыта" -- карьера делается у нас!
 

флоппик

promotor fidei
Команда форума
Партнер клуба
По хорошему я понимаю, что было бы классно изучать Zend framework или подобное и получше вникать в суть ООП, в суть шаблонов и сложных запросов SQL. Только я понимаю, что на это уйдёт много времени, притом не факт, что я найду где это применить.
Это кажется так. Просто потому, что если бы на это не было спроса, этого бы или не было, или бы ты об этом не слышал :)
 

Redjik

Джедай-мастер
proWoke
Если помнишь, меня два раза забанили на форуме модекса за попытки объяснить, что
PHP:
<?php 
$amount = count($array);
for ($i=0; $i<$amount; ++$i) {
}
?>
Лучше чем:
PHP:
<?php 
for ($i=0; $i<count($array); ++$i) {
}
это гипербола конечно =)
но сути не меняет

modx - неплохой движок, но сообщество у них - отборные говнокодеры (рус сообщество)
с другой стороны, modx дает тонны ненужного функционала + тормозная админка добивает...
+ качество кода не всегда на уровне...

Я прекрасно понимаю разрабов, что они никогда не смогут тягаться с Фабиеном или Квонгом, но, боже мой, посмотреть как делают движки люди (с опытом движко строения 10-15 лет) я считаю не зазорно...
 

Redjik

Джедай-мастер
ЛОл, а почему лучше? Меня этому на работе научили... Ну и по логике вроде функция выполняется раз, тем самым экономит скорость. А в верстальщики я всегда успею. И я не такой глупый и бездарный, просто моё обучение похоже на хождение по лабиринту.
пока с modx возился, такие же ощущения были
 

Ragazzo

TDD interested
proWoke
Я же хакером хочу быть
LOL... не туда копаешь. PHP тут малую долю играет, изучать надо было все с самых низов с того что такое TCP/UDP как работает и дальше выше по стеку, или ты кулхацкером похапе хочешь быть?)
Redjik
Если помнишь, меня два раза забанили на форуме модекса за попытки объяснить, что
не любят когда им в говнокод их же лицом тыкают?)
 

Redjik

Джедай-мастер
Ragazzo
да нет, там просто любят все готовое и очень не любят открывать php.net

напоминает хабр, кто-нибудь сморозит чушь, ему наставят плюсов, ты ссылку на php.net - тебе минусов, первый чувак ссылку на php.su, ему опять плюсов, ты ссылку на php.net, где черным по красному, что это depricated - тебе минусов, потом ты кроешь всех матом и радуешься карме =)

ЗЫ. кстати, в выходные на гит закину - аля YiiBootstrap - не CMS, просто все собрано и разложено по полочкам, чтобы сразу приступать к разработке + сайт визитка из коробки...
 

Ragazzo

TDD interested
Redjik
Таки ломай уже)

proWoke
И в чем проблема?в лени чтоли?что мешает взять любой FW и сесть его изучать?или ты думаешь что "знания хорошего разработчика" к тебе сами придут из космоса? :D
 

Breeze

goshogun
Команда форума
Партнер клуба
Если я буду дальше изучать Modx и его код и умение делать на нём различные сайты, то это не будет сильной ошибкой?
Так ты изучи рынок труда-то, посмотри, насколько этот модх востребован.
 

Yoskaldyr

"Спамер"
Партнер клуба
Потому что размер массива и так берется из внутренней переменной, аналогично и strlen().

https://github.com/php/php-src/blob/master/ext/standard/array.c#L306
https://github.com/php/php-src/blob/master/Zend/zend_hash.c#L1053
А если $array это объект типа ArrayObject? ;)

Просто исходя из теории программирования лучше всетаки использовать 1-й вариант.

К тому же в текущем неймспейсе array или count может быть переопределен. Не говоря уже об извращениях типа пхп-расширения, которое переопределит эти функции.

А если и дальше занудствовать, то сравнение 2-х значений целочисленных переменных все равно будет быстрее сравнения переменной с результатом вызова функции. Я даже молчу что count это alias для sizeof (т.е. sizeof быстрее count).

Так что Ваше замечание что второй вариант лучше пройдет только в случае более удобочитаемого кода (и то не всегда)
 

Вурдалак

Продвинутый новичок
К тому же в текущем неймспейсе array или count может быть переопределен.
Давай без фантазий.

А если $array это объект типа ArrayObject?
Ну да, а если бы у бабки был ***, то она была бы дедом. Да и потом, в 99% count у ArrayObject тоже сводится к count() array'я.

Если ради этих фантазий вы готовы насрать в код лишней переменной — пожалуйста. Вы еще кавычки сравните, профессора.
 

Yoskaldyr

"Спамер"
Партнер клуба
Вы сами начали говорить о производительности, указывая на то что count берет значение из внутренней переменной. Я просто намекнул что даже в этом случае 1-й вариант все равно будет быстрее.
И насчет ArrayObject - если Вы не пользовались ArrayObject, то это не значит что другие не пользуются.

P.S. Игнорлист увеличен на одного быдлокодера...
 

Вурдалак

Продвинутый новичок
Вы сами начали говорить о производительности
Это неправда. Меня это даже не интересует.

Я просто намекнул что даже в этом случае 1-й вариант все равно будет быстрее
Я даже думать не желаю о том, что тут может быть быстрее. Если у человека есть здравый смысл, он не будет вводить дополнительную переменную после изучения исходников PHP. Я бы понял, если тебе было бы 15 лет, но тут уже клиника.
 

Redjik

Джедай-мастер
Вурдалак
я исходники не смотрел (забросил C на указателях - еще вернусь), как руки дойдут - обязательно изучу, но откуда то этот миф взялся, его я слышал не раз, зато тут услышал впервые, что оказывается внутренняя переменная используется.
 

Breeze

goshogun
Команда форума
Партнер клуба
Вурдалак
я исходники не смотрел (забросил C на указателях - еще вернусь), как руки дойдут - обязательно изучу, но откуда то этот миф взялся, его я слышал не раз, зато тут услышал впервые, что оказывается внутренняя переменная используется.
zval хранит в себе размер элемента

но вообще я не вижу причин для того, чтобы экономить на количестве переменных.
понадобится этот count после цикла ниже по коду и придется все-равно заводить, да еще и цикл править.
 

Breeze

goshogun
Команда форума
Партнер клуба
хотя может и вру, не zval, а hash-таблица
в любом случае кто-то из них
 
Сверху