Zend Certified PHP Engineer
\\ Glen Langer // 
Contao Camp 2017 in Jever
Version: 1.0.0 vom 11.11.2017
(Logos: www.zend.com)
Über mich
- Contao seit 2.5.8
- PHP ZCE (4, 7.1)
- Forum: BugBuster
- Camp: James Buster, im Auftrag von Contao
- http://contao.ninja/
Inhalt
- Was ist das?
- Was muss ich dafür tun?
- Was habe ich davon?
- Was kostet mich das?
- Wo die Prüfung durchführen?
- Wie sieht die Prüfung aus?
- Welche Fragen kommen in der Prüfung
- Beispiele der Fragen
Was ist das?
"Zend Certified Engineer" (ZCE) / "Zend Certified PHP Engineer"
- ein branchenweiter Standard
- Beweist die eigene PHP-Fachkenntnis
Ein ZCE:
- hat ein Grundwissen über alle PHP Themen
- kann Fehler in fremden Quellcodes
schnell erkennen und beheben
PHP Themen 1/2
- PHP Grundlagen (Syntax, Operatoren, Variablen, ...)
- Funktionen (Argumente, Scope, Rückgaben, ...)
- Daten Formate und Typen (XML, SOAP, JSON, DateTime, ...)
- Web Features (Session, Forms, Cookies, GET / POST, ..)
- OOP (Instanzen, Interface, Autoload, Reflection, Traits, ...)
- Sicherheit (Cross-Site Scripting, SQL Injection, Filter Input, ...)
Priorität: Hoch - Mittel - Gering
PHP Themen 2/2
- Input/Output (Dateien, Lesen, Schreiben, Streams, ...)
- Strings (Suchen, Ersetzen, Formatieren, PCRE, ...)
- Database (SQL, Joins, PDO, ...)
- Arrays (Funktionen, Iteration, ...)
- Error Handling (Exceptions, Errors, Throwables (PHP 7))
Priorität: Hoch - Mittel - Gering
Was habe ich davon?
Persönliche und berufliche Vorteile
- Anerkennung vom Arbeitgeber bzw. Steigerung des eigenen Wertes
- Differenzierung zu anderen bei einer Stellenbewerbung / einer Ausschreibung
- Aufnahme im Zend Certified Engineers Verzeichnis für PHP-Profis, weltweit von Personalchefs und -vermittlern genutzt
- Exclusiver Beitritt in der Linkedin Gruppe für ZCEs
- Eine kostenlose Zend Studio Lizenz
Was habe ich davon?
bzw. mein Arbeitgeber
- Sicherstellung von einem hohen Maß an Expertise im PHP-Entwicklungs-Team
- Maximierung Team-Produktivität und -Performance
- Professionelles Image gegenüber Kunden und Partnern
- Wettbewerbsvorteile
Was muss ich dafür tun?
- Vorbereitung
- Voucher erwerben
- Prüfung bestehen
Basis ist PHP 7.1, Error Reporting ist gesetzt auf E_ALL, Fehler werden angezeigt.
Vorbereitung
- Testfragen durchgehen (Online)
- PHP Certification Study Guide (Offline)
- Lücken finden
- Lücken beseitigen => lernen!
Voucher erwerben
- Über zend.com Voucher erwerben
- Kostet derzeit $195 (~$125 als Wiederholungstäter)
- Ein Jahr gültig
- Vorlage beim Prüfungszenter
(Pearson VUE Testing Center)
Prüfung bestehen
- Online Prüfung (englisch)
(in einem der Pearson VUE Testing Center) - Ohne Hilfsmittel
- 75 Fragen in 90 Minuten
- Multiple Choice
- Freitextfragen
FAQ 1/4
- Wer schreibt die Examen?
- Mitglieder des Zend PHP Education Advisory Board
- gehören zu den bekanntesten und angesehensten in der PHP-Gemeinschaft.
FAQ 2/4
- Wie und wann erfahre ich ob ich bestanden habe?
- Sofort am Ende der Prüfung.
FAQ 3/4
- Kann ich die Prüfung wiederholen?
- Ja, aber neuer Voucher fällig, Rabatt möglich
FAQ 4/4
- Wann erhalte ich welche Nachweise?
- Urkunde per Mail in 8-10 Wochen
- Eintrag ins Verzeichnis in 24-48 Stunden, editierbar über Zend Account
- Logo zur Verwendung per Download
Beispiele der Fragen
Einige Beispielfragen aus den einzelnen Themengebieten. Hier wurden bewust welche genommen, die in Eile oft falsch beantwortet werden.
What will be the output of the script?
<?php
echo count("Contao");
?>
a) 0
b) 6
c) true
d) 1
What will be the output of the script?
<?php
echo 'Contao ' . 1 + 2 . '34';
?>
a) Contao 334
b) 234
c) 0
d) Contao 1234
Which of the following statements is true about deleting a client's cookie?
a) You can delete a cookie by using the session.rem_cookie() function.
b) You can delete a cookie by using the delcookie() function.
c) You cannot delete a cookie from a client computer.
d) You have to set the session.gc_maxlifetime INI setting in the php.ini file.
setcookie("user", "", time()-3600);
What will be the output of the script?
<?php
for ($i = ord('a'); $i < ord('e'); $i++);
echo chr($i);
?>
a) abcd
b) d
c) e
d) c
What will be the output of the script?
<?php
$a = 0;
if ($a = 10) { echo "a"; }
if ($a == 0) { echo "b"; }
if ($a == "0") { echo "c"; }
?>
a) abc
b) a
c) b
d) bc
Which of the below provided options is correct regarding the below code?
<?php
$a = array (1, 2, 3);
$b = array (1 => 2, 2 => 3, 0 => 1);
$c = array ('a' => 1, 'b' => 2, 'c' => 3);
var_dump ($a == $b);
var_dump ($a === $b);
var_dump ($a == $c);
?>
a) false true true
b) true true false
c) true false true
d) true false false
What will be the output of the script?
<?php
$a = 5;
$b = 4;
$c = ($a++ * ++$b);
echo $c;
?>
a) 20
b) 24
c) 25
d) 30
What will be the output of the script?
<?php
define('MYCONSTANT', 0);
if (empty(MYCONSTANT)) {
echo "Hello";
}
else {
echo "Goodbye";
}
?>
a) Goodbye
b) Hello
c) Syntax Error
In which of the following ways will you receive data from a Web page if you do not know how data is sent?
a) $_REQUEST[ ]
b) $_GET[ ]
c) $_POST[ ]
d) $_SEND[ ]
Consider the following PHP code:
<?php
echo strlen(md5(rand(),TRUE));
?>
a) 64
b) 8
c) 32
d) 16
Which of the following functions can be used to compare two strings using a case-insensitive binary algorithm?
a) strstr()
b) substr()
c) strcasecmp()
d) strcmp()
What will be the output of the script?
<?php
$numbers = array(5, 6, 7, 8);
end($numbers);
while (key($numbers)) {
echo current($numbers);
prev($numbers);
}
?>
a) 5678
b) 8765
c) 321
d) 876
Linkliste
Zend Certifications:
PHP Certification:
- PHP Certification Voucher
- The PHP Study Guide (Zend ebook, en)
- PHP 7 Zend Certification Study Guide
(Buch, en, ab 22.12.2017) - Pearson VUE Testcenter
Nützliches:
- Zend PHP 5.3 Certification Exam
(alter Online Test)
Danke!
Aktuelle Version dieser Folien auf: docs.contao.ninja
(auch als PDF - Später auch als Video?)
Pause
<?php
try {
drinkCoffee()
} catch (OutOfCoffeeException) {
die(-1)
}
?>
