Комментарии 93
Под кат бы.
-9
пока окончательно не заминусовали — спрячьте под кат
-7
исправил.
+4
Воспользовались всеми 10 попытками тестовой сдачи? :)
+3
нет, осталось парочка.
0
Лично от себя могу добавить что «PHP Architects's Zend PHP 5 Certification Study Guide» должно быть обязательно Second Edition.
+2
НЛО прилетело и опубликовало эту надпись здесь
echo '3' + '0.5', print('2') + 1;
сначала выведется 2, т.к. считаются все функции из которых состояит выражение, print вернет true (1) к этому прибавится еще 1. Но перед этим выведется 3.5 (результат операции сложения).
Итого: 23.52
сначала выведется 2, т.к. считаются все функции из которых состояит выражение, print вернет true (1) к этому прибавится еще 1. Но перед этим выведется 3.5 (результат операции сложения).
Итого: 23.52
-5
НЛО прилетело и опубликовало эту надпись здесь
вы бы хоть код выполнили ;) для собственной проверки
+1
НЛО прилетело и опубликовало эту надпись здесь
print не является функцией, при этом у него может быть только один параметр. Поэтому в конструкции
print('2') + 1
аргументом является
('2') + 1
Это второй символ «3» в напечатанной строчке.
Сам оператор print всегда возвращает (int) 1, эта единица фигурирует в результате выполнения как последний символ.
print('2') + 1
аргументом является
('2') + 1
Это второй символ «3» в напечатанной строчке.
Сам оператор print всегда возвращает (int) 1, эта единица фигурирует в результате выполнения как последний символ.
+4
НЛО прилетело и опубликовало эту надпись здесь
В данном примере важным является еще и то, что у «print» приоритет выше, чем у ",", а у операции "+" приоритет выше, чем у «print».
0
Вы ошибаетесь по поводу приоритетов запятой и print'а.
0
Расскажите, пожалуйста.
0
Чтобы не повторяться — выше уже подробно расписали.
Согласно этой таблице, среди всех операторов у запятой — наименьший приоритет.
Но в данном случае это даже не имеет значения, потому что у функций (и языковых конструкций, как в случае с print) приоритет выше, чем у любого оператора.
Согласно этой таблице, среди всех операторов у запятой — наименьший приоритет.
Но в данном случае это даже не имеет значения, потому что у функций (и языковых конструкций, как в случае с print) приоритет выше, чем у любого оператора.
0
Таким образом, Вы считаете что у print приоритет выше, чем у любого оператора.
В мануале по функции print есть ссылка вот на эту страничку. На ней написано буквально следующее
print is also part of the precedence table which it needs to be if it is
to be used within a complex expression. It is just about at the bottom
of the precedence list though. Only "," AND, OR and XOR are lower.
Если я правильно перевел с английского, то тут написано в частности, что по приоритету ниже, чем print, располагаются лишь "," AND, OR и XOR.
Кажется, это противоречит Вашему утверждению.
В мануале по функции print есть ссылка вот на эту страничку. На ней написано буквально следующее
print is also part of the precedence table which it needs to be if it is
to be used within a complex expression. It is just about at the bottom
of the precedence list though. Only "," AND, OR and XOR are lower.
Если я правильно перевел с английского, то тут написано в частности, что по приоритету ниже, чем print, располагаются лишь "," AND, OR и XOR.
Кажется, это противоречит Вашему утверждению.
+1
А если так?
echo print('5') + print('4');
echo print('5') + print('4');
0
Сначала выполнится последний print и напишет «4», потом его результат (int 1) просуммируется с ('5') и отправится в первый принт как аргумент (напечатается «6»), а потом echo напечатает результат первого принта (int 1). Итого «461».
0
Но вы же написали выше, что
>>операции "+" приоритет выше, чем у «print».
А тут первым выполнился последний print
>>операции "+" приоритет выше, чем у «print».
А тут первым выполнился последний print
0
А еще я написал, что у принт — не функция и у него _всегда_ один аргумент. Поэтому
('5') + print('4');
это аргумент первого принта.
('5') + print('4');
это аргумент первого принта.
0
Но вообще на мой взгляд такие тонкости хороши только для академических целей и состязаний для хакеров. Писать код, который заведомо будет поддерживаться и развиваться другими людьми, и при этом вставлять в него такие штуки — настоящее свинство.
+16
Такие тонкости нужны для того, чтобы столкнувшись с подобным е****ым использованием php не впасть в ступор, а как минимум обратить на это внимание, а как максимум знать что код реально делает.
0
какой смысл держать в голове особенности поведения php-функций, а так же кучу параметров, которые могут изменяться от версии к версии? Я думаю такие тесты не могут являться показателем способностей человека, поэтому смысла не вижу…
Кстати, вот если уж действительно хотите узнать «как это работает», посмотрите исходники php )
Кстати, вот если уж действительно хотите узнать «как это работает», посмотрите исходники php )
+2
И много исходников вы просмотрели? Поделитесь с общественностью.
0
Пару раз, смотрел как работают еще недокументированные функции для интереса. А в чем проблема? www.php.net/downloads.php
0
и сразу зарефакторить это:))
0
спасибо. Теперь понятно.
0
НЛО прилетело и опубликовало эту надпись здесь
Вы что-то путаете
0
# php -r 'echo «3» + «0.5», print(«3») + 1';
3.531
вообще имхо — за такой код в реальном проекте нужно руки отрывать, надеюсь я так никогда писать не буду :). но знать и понимать это стоит не спорю
3.531
вообще имхо — за такой код в реальном проекте нужно руки отрывать, надеюсь я так никогда писать не буду :). но знать и понимать это стоит не спорю
+4
echo '3' + '0.5', print('2') + 1;
Помоему такие вопросы — самый изврат в тестах. Смысла нет никогого, а времени все это уходит уйма, короче тупое дроче…
Помоему такие вопросы — самый изврат в тестах. Смысла нет никогого, а времени все это уходит уйма, короче тупое дроче…
+7
А есть ли подобные тесты (того же уровня) по js, xhtml, css.
Очень хочу набрать книжной инфы, но просто так читать лень.
Очень хочу набрать книжной инфы, но просто так читать лень.
0
Видимо, нет )))
0
На brainbench.com иногда бывают бесплатные тесты.
0
По CSS очень интересные тесты на sitepoint'е бывают. Например, www.sitepoint.com/forums/showthread.php?t=618512
Я до сих пор не знаю, как в четвертой задаче не изменяя html код сделать тень для текста :-)
Я до сих пор не знаю, как в четвертой задаче не изменяя html код сделать тень для текста :-)
0
Где бы достать пробные тесты в электронном виде, чтоб потренироваться не в боевых условиях?
0
Они не дорого стоят на сайте Zend, можно купить как отдельно, так и вместе с допуском к экзамену.
В принципе, 10 штук хватает, так как они передают атмосферу как на эказмене. Правда, было какое-то отличие, которое меня по началу вогнало в ступор на экзамене, но уже не помню.
В принципе, 10 штук хватает, так как они передают атмосферу как на эказмене. Правда, было какое-то отличие, которое меня по началу вогнало в ступор на экзамене, но уже не помню.
0
Я тоже получил сертификат в феврале :)
Вообще началось все еще года полтора назад, когда был тест по 4-ой версии, правда тогда не хватило меня на то, что бы подготовиться во время и в итоге уже вышел тест 5-ой версии. И вот спустя где-то полгода решил сдать, чисто для галочки и потешить себя, так как у нас тоже все эти сертификации не особо ценятся.
На подготовку ушел один Certification Bundle и Study Guide. Из доступных подготовительных тестов использовал 7.
На подготовку ушло чуть меньше месяца с учетом того, что учился и работал в это время.
Самым сложным в подготовке было то, что не особо широко используется на практике мною — streams. Также как и у автора ;)
В целом ни капли не жалею что потратил время и деньги на сертификацию — по краиней мере фан получил :)
Для себя отметил — тест на большой опыт кодерства и знание мануала. Инженерных навыков в человеке им не проверишь, и я думаю, что если очередной человек на вакансию php-dev будет иметь при себе ZCE, это для меня не будет показателем того, что его следует брать.
Вообще началось все еще года полтора назад, когда был тест по 4-ой версии, правда тогда не хватило меня на то, что бы подготовиться во время и в итоге уже вышел тест 5-ой версии. И вот спустя где-то полгода решил сдать, чисто для галочки и потешить себя, так как у нас тоже все эти сертификации не особо ценятся.
На подготовку ушел один Certification Bundle и Study Guide. Из доступных подготовительных тестов использовал 7.
На подготовку ушло чуть меньше месяца с учетом того, что учился и работал в это время.
Самым сложным в подготовке было то, что не особо широко используется на практике мною — streams. Также как и у автора ;)
В целом ни капли не жалею что потратил время и деньги на сертификацию — по краиней мере фан получил :)
Для себя отметил — тест на большой опыт кодерства и знание мануала. Инженерных навыков в человеке им не проверишь, и я думаю, что если очередной человек на вакансию php-dev будет иметь при себе ZCE, это для меня не будет показателем того, что его следует брать.
+3
Судя по привиденному примеру, ZCE — это проверка насколько ты индус (http://lurkmore.ru/Индус).
+8
А что, программист ещё должен проверять где пропущены запятые? Это задача компилятора, вообще-то.
И да, все эти сертификаты — просто вытрясание денег, не более, к тому же никто не может проконтролировать, ты сидишь за монитором или кто-то другой.
Реальный показатель — это успешно выполненные проекты в резюме.
И да, все эти сертификаты — просто вытрясание денег, не более, к тому же никто не может проконтролировать, ты сидишь за монитором или кто-то другой.
Реальный показатель — это успешно выполненные проекты в резюме.
+3
твоя сдача сертификации записывается на камеру, перед тем как начать тестирование, ты предъявляешь супервайзеру 2 документа с подписью, на одном из них должна быть твоя фотография. так что если не знаешь… ну ты понял.
теперь допустим сертификацию каким-то образом за тебя сдаст другой человек, вот тут действительно — затраты не соизмеримы с выгодой.
теперь допустим сертификацию каким-то образом за тебя сдаст другой человек, вот тут действительно — затраты не соизмеримы с выгодой.
0
Тут по соседству один такой проект обсуждают… Вполне успешный с тз. коммерциализации. habrahabr.ru/blogs/webdev/61219/
Это реальный показатель?
Это реальный показатель?
+1
Давай не путать работу маркетологов и программистов, я видел как хороший по коду проект оказывался в глубокой ж, по ссылке — симметричный проект.
Увидев это код, я бы никогда не взял бы такого программиста на работу. Так что да — показатель.
Увидев это код, я бы никогда не взял бы такого программиста на работу. Так что да — показатель.
0
Да, но проект то успешно выпонен… Это же ваши слова… Т.е. с вашей тз все ОК…
А про контроль того кто сидит за монитором, вы ни разу не сдавали тест на сертификат поэтому и делаете такие заявления.
А про контроль того кто сидит за монитором, вы ни разу не сдавали тест на сертификат поэтому и делаете такие заявления.
0
Спасибо за список литературы
0
Пример — полная жесть, оторван от реальности. На память знать работу всех функций и расширений типа mysqli, которыми, имхо, почти никто не пользуется — тоже нафиг не нужно. В общем, лично я еще раз убедился, что сертификации — ерунда.
0
согласен что жесть, но какой бы жестью это не было, ты обязан научится понимать то, что писали/пишут другие люди. в этом то и весь смысл таких задач.
0
Имхо просто развод на деньги.
Программисту на php не нужно глубокое знание встроенных функций. я знаю только основные и не брезгую пользоваться мануалом, зачем голову загружать, Куда важнее например знать архитектурные решения, устройство фреймворков (в деталях), и тд. знать хотя бы в общих чертах, про оптимизацию запросов к БД (чтобы фигню не писать), про организацию кеширования, про правильные HTTP-заголовки, п
Программисту на php не нужно глубокое знание встроенных функций. я знаю только основные и не брезгую пользоваться мануалом, зачем голову загружать, Куда важнее например знать архитектурные решения, устройство фреймворков (в деталях), и тд. знать хотя бы в общих чертах, про оптимизацию запросов к БД (чтобы фигню не писать), про организацию кеширования, про правильные HTTP-заголовки, п
+2
Тут получаешь сертификат на знание самого языка. Кстати, в процессе подготовки к нему узнаешь много интересных вещей, включая тонкости работы парсера.
P.S. Покупные онлайн-тесты — вот развод на деньги, т.к. они имеют мало общего с реальными задачами на экзамене. Хотя они весьма любопытные и заведомо сложнее.
P.S. Покупные онлайн-тесты — вот развод на деньги, т.к. они имеют мало общего с реальными задачами на экзамене. Хотя они весьма любопытные и заведомо сложнее.
+1
Этот экзамен действительно масштабен. Вопросы есть по каждой теме. Автор забыл упомянуть о том, что Zend умалчивает количество верных ответов необходимое для сдачи экзамена. На выходе получаешь Pass/Fail.
У меня слава богу появилось 'Pass', хотя во время прохождения этого коварного экзамена приходилось сомневаться в правильности ответов.
У меня слава богу появилось 'Pass', хотя во время прохождения этого коварного экзамена приходилось сомневаться в правильности ответов.
0
пример демонстрирует бессмысленность сертификата, надеюсь остальные вопросы были более жизненными, а то после такого кода скорее всего останешься с сертификатом, но без работы.
0
В жизни вы используете от силы 15% всех возможностей PHP. В процессе подготовки вы вспомните про оставшиеся 85%.
Этот экзамен не проверяет красоту кода, а оценивает знание теоретических основ, принципов работы интерпретатора и основных расширениий.
Этот экзамен не проверяет красоту кода, а оценивает знание теоретических основ, принципов работы интерпретатора и основных расширениий.
0
это вещи, которые знать полезно, но применять опасно. мои знания покрывают большую часть функционала, но много где я в мелочи не въезжаю пока не понадобится. А даже по знакомому функционалу не брезгую открывать онлайн мануал, чтобы удостовериться, что ничего не изменилось.
скажем так, за время работы я уже познакомился с 85%-ми нужного мне функционала.
скажем так, за время работы я уже познакомился с 85%-ми нужного мне функционала.
0
У каждого разработчика есть свой «нужный» функционал. А в экзамене ZCE попытались объединить всё это воедино. Вы правы что при подготовке к этому экзамену невозможно научиться программировать. Ведь умения — это практические навыки. Вот только многие забывают о фундаментальных знаниях на которых эти навыки и должны строиться.
0
и ещё, большинство тонкостей языка инкопсулируются в классы, как например, работа с файловой системой, тот же simplexml можно узать только рид онли без обёртки, потому что даже CDATA не реализовано, работа с БД без обёртки тоже страшна, даже с PDO.
0
Многие считают, что сертификация зло, ибо «мой код работает и ладно». А из-за этого подхода мы и имеем тонны быдлокода написанного по тому же принципу «работает и ладно». И тучу «типа ПХП программеров» на рынке труда.
0
Сертификат ZCE — великая вещь, но главное в правильной пропорции совмещать теорию с практикой.
Скажите, сколько баллов из скольки вы набрали?
Скажите, сколько баллов из скольки вы набрали?
0
А бумажный-то сертификат выдали? Или работодателю предявлять линк на их сайт? :)
0
Еще один сертифицированный пхп-инженер :) Поздравляю :)
По-моему в рунете уже в традицию вошло: сдал зенд-сертификацию — напиши статью. :)
Я вот тоже когда-то писал, как я Zend-сертификацию проходил.
По-моему в рунете уже в традицию вошло: сдал зенд-сертификацию — напиши статью. :)
Я вот тоже когда-то писал, как я Zend-сертификацию проходил.
-1
Я тоже ZCE :)
+1
Поздравляю. Завидую. Давно облизываюсь на ZCE, но всё никак не соберусь подготовиться и пройти наконец :-(
+1
> С ростом популярности PHP, возникла такая проблема — разработчиков много,
> но кто из них действительно профи? Разобрать не так-то просто, поэтому было
> решено создать промышленный стандарт сертификации.
И что? Мне, как человеку, ищущему в настоящий момент высококлассного PHP-программиста, это всё равно что мёртвому припарка. Потому что:
1. Покрытие этого теста по веб-девелопером равно приблизительно 0.0%
2. У меня есть величайшее сомнение, что человек получивший данный сертификат не представляет из себя шлак, на который я потрачу время впустую при собеседовании.
> но кто из них действительно профи? Разобрать не так-то просто, поэтому было
> решено создать промышленный стандарт сертификации.
И что? Мне, как человеку, ищущему в настоящий момент высококлассного PHP-программиста, это всё равно что мёртвому припарка. Потому что:
1. Покрытие этого теста по веб-девелопером равно приблизительно 0.0%
2. У меня есть величайшее сомнение, что человек получивший данный сертификат не представляет из себя шлак, на который я потрачу время впустую при собеседовании.
+2
сдал вчера. вопросы показались гораздо более простыми, чем мок-тест от php|architects.
суть подготовки
1. надо несколько раз поставить и настроить php (в различных вариантах — apache + mod_php, apache + cgi, nginx + php-fpm), это заставит хотя бы пару раз заглянуть в php.ini, поняв, что и за что там отвечает;
2. в качестве обертки для БД — использовать каждый день PDO с различными драйверами под него (никаких PEAR DB или сторонних);
3. написать пару веб-сервисов (REST, XML-RPC, SOAP), применив различные шаблоны проектирования (Singleton/Registry, Builder/Factory, Adapter/Strategy, Proxy/ActiveRecord, Command/ChainOfResponsibility) — сервис погоды, случайных фраз или цитат известных людей, вариантов множество, выбирать вам. Заодно разберетесь, что есть такое валидный XML, и почему важен UTF-8 encode entities (привет w3c.org);
4. поковырять любой современный CMF (ZF, Symphony, CodeIgniter), чтобы просмотреть что такое MVC, __autoload, SPL, PPP (public, protected, private), abstract, final, понять как грамотно использовать различные предустановленные константы вроде __FILE__, __CLASS__ и функции вроде call_user_func(), func_num_args(), func_get_args();
5. найти на milw0rm'e любой бажный движок и внимательно просмотреть все патчи, разобравшись, чем грозит SQL Injection, XSS, CSRF и RFI, на php.net прочесть про magic_quotes, ===, basename(), htmlentities (с пониманием разницы между ним и htmspecialchars), strip_tags, mysql_real_escape (с разницей от mysql_escape) и hash. погуглить немного prepared statements, написать свою функцию экранирования, понять, где нужно включать allow_url_fopen, чем полезна open_basedir и как ее можно обойти, не пропустить filter_var
6. сесть и переписать свой тысячный твиттер с приобретенными знаниями о безопасности, поигравшись в запросах c EXPLAIN и EXPLAIN ANALYZE, созданием правильных индексов и применения нормализации (и почему на нагруженных проектах про нее надо забывать)
7. развернуть для своих игрищ линух (пойдет ubuntu 8.04) — для виндузятников в VMWARE. разобраться с rwx, chmod и umask. узнать про tempnam.
там же доставить xdebug через pecl, memcached и php-apc через aptitude. понять весь масштаб трагедии еще недописанного твиттера, добавить туда $mc->set('user_31337_friends', $friends, 0, 900); $friends = $mc->get('user_31337_friends'), узнать о race conditions, обойти его с помощью ключа с ttl, включить APC и увидеть прирост скорости
8. найти книжку про оптимизацию css и js, выставление грамотных header с cache-control'ом. понять про че она)
9. написать мне, я допишу квест… а пока иду спать.
суть подготовки
1. надо несколько раз поставить и настроить php (в различных вариантах — apache + mod_php, apache + cgi, nginx + php-fpm), это заставит хотя бы пару раз заглянуть в php.ini, поняв, что и за что там отвечает;
2. в качестве обертки для БД — использовать каждый день PDO с различными драйверами под него (никаких PEAR DB или сторонних);
3. написать пару веб-сервисов (REST, XML-RPC, SOAP), применив различные шаблоны проектирования (Singleton/Registry, Builder/Factory, Adapter/Strategy, Proxy/ActiveRecord, Command/ChainOfResponsibility) — сервис погоды, случайных фраз или цитат известных людей, вариантов множество, выбирать вам. Заодно разберетесь, что есть такое валидный XML, и почему важен UTF-8 encode entities (привет w3c.org);
4. поковырять любой современный CMF (ZF, Symphony, CodeIgniter), чтобы просмотреть что такое MVC, __autoload, SPL, PPP (public, protected, private), abstract, final, понять как грамотно использовать различные предустановленные константы вроде __FILE__, __CLASS__ и функции вроде call_user_func(), func_num_args(), func_get_args();
5. найти на milw0rm'e любой бажный движок и внимательно просмотреть все патчи, разобравшись, чем грозит SQL Injection, XSS, CSRF и RFI, на php.net прочесть про magic_quotes, ===, basename(), htmlentities (с пониманием разницы между ним и htmspecialchars), strip_tags, mysql_real_escape (с разницей от mysql_escape) и hash. погуглить немного prepared statements, написать свою функцию экранирования, понять, где нужно включать allow_url_fopen, чем полезна open_basedir и как ее можно обойти, не пропустить filter_var
6. сесть и переписать свой тысячный твиттер с приобретенными знаниями о безопасности, поигравшись в запросах c EXPLAIN и EXPLAIN ANALYZE, созданием правильных индексов и применения нормализации (и почему на нагруженных проектах про нее надо забывать)
7. развернуть для своих игрищ линух (пойдет ubuntu 8.04) — для виндузятников в VMWARE. разобраться с rwx, chmod и umask. узнать про tempnam.
там же доставить xdebug через pecl, memcached и php-apc через aptitude. понять весь масштаб трагедии еще недописанного твиттера, добавить туда $mc->set('user_31337_friends', $friends, 0, 900); $friends = $mc->get('user_31337_friends'), узнать о race conditions, обойти его с помощью ключа с ttl, включить APC и увидеть прирост скорости
8. найти книжку про оптимизацию css и js, выставление грамотных header с cache-control'ом. понять про че она)
9. написать мне, я допишу квест… а пока иду спать.
+3
Я вот не знаю с чем это связано, с моей статьёй на хабре или ещё с чем то, но за вчерашний день целых три человека из Новосиба сдали на ZCE :-D
+1
purple_m0nkey, после прочтения твоей мотивационной статьи мы посовещались с друзьями и решили, что если уж китайский за ночь выучили, то и php за час освоим. Купили в интернетах ваучеры и поехали в Сибинфоцентр сдавать на ZCE, как таковых знаний никогда не было и нет, из книг читали только «Освой самостоятельно PHP4 за 24 часа», да и то пока ехали на экзамен на трамвае. Поначалу было трудно, трамвай трясло, но мы успели прочитать оглавление.
+1
От себя хочу заметить, что PHP Architects's Zend PHP 5 Certification Study Guide лучше использовать сразу двух изданий. Т.к. в издании по PHP5 впихнули все, что только можно и из-за этого чуть пострадала глубина изложения.
Еще мне в последние дни перед экзаменом, когда от стадиГайдов и тестов реально тошнило =) помогла собраться вот эта брошюра. Она лежит на блоге у китайского программиста (тоже ZCE, ага =) и представляет собой материал, который выдается при прохождении официального курса подготовки к экзамену. Там, кажется, была пара моментов, которые не освещались в стадиГайде, но были в вулкановских тестах.
Я не считаю, что сертификат — это что-то необходимое, но зато подготовка и сдача очень бодрят и иногда обогащают новыми знаниями.
Еще мне в последние дни перед экзаменом, когда от стадиГайдов и тестов реально тошнило =) помогла собраться вот эта брошюра. Она лежит на блоге у китайского программиста (тоже ZCE, ага =) и представляет собой материал, который выдается при прохождении официального курса подготовки к экзамену. Там, кажется, была пара моментов, которые не освещались в стадиГайде, но были в вулкановских тестах.
Я не считаю, что сертификат — это что-то необходимое, но зато подготовка и сдача очень бодрят и иногда обогащают новыми знаниями.
0
Нашел информацию для подготовки к сертификации в одном архиве
-1
Поздравляю коллега! А я вот поленился писать статью, после сдачи, в основном из-за того, что хотелось привести примеры вопросов, но после сдачи они как-то быстро забылись.
0
Ребят, заходим на мой блог и качаем книги по сертификации!
-1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как стать Zend PHP 5 Certified Engineer