חפש משרות חדשות בלוח: דרושים להייטק

האם אתה מעסיק? לחץ כאן

סגור הודעה זו

מבחן PHP לראיון עבודה בהייטק

אתם עומדים להתראיין למשרת מהנדס PHP, ואתם לא בטוחים מה עומדים לשאול. הגעתם למקום הנכון! ביקשנו מרן בר זיק, מהנדס תוכנה עם שנות ניסיון רבות בשפת PHP על גרסאותיה השונות, לחבר מבחן עם שאלות שסביר להניח שיופיעו בראיון שלכם.

שאלות למתחילים

שאלה: מה ההבדל בין " ל ' כאשר אנו כותבים מחרוזת טקסט?

תשובה: כאשר אנו משתמשים במרכאות כפולות אנו יכולים להשתמש במשתנים בתוך המחרוזת.

שאלה: מה זה heredoc?

תשובה: טכניקה של PHP ליצירת מחרוזות טקסט ארוכות:

class foo {

   public $bar = <<<EOT

bar

   EOT;

}

שאלה: למה משתמשים ב-heredoc?

תשובה: אם רוצים ליצור מחרוזת טקסט ארוכה ולא רוצים לעשות escaping למרכאות כפולות.

שאלה: כיצד אני מדפיס איבר במערך אסוציאטיבי בתוך מחרוזת טקסט?

תשובה: באמצעות סוגריים מסולסלות. למשל:

"Here is an example {$obj->property}"

שאלה: מה הבעיה בקוד הבא?

if ($result = $mysqli->query("SELECT * FROM my_costumer WHERE id=$id LIMIT 1")) {

    while ($result->fetch_object()) {

        print_r($result->fetch_assoc());

    }

}

תשובה: הלולאה לא הכרחית כיוון שהצבנו LIMIT ל-Query.

שאלה: מה ההבדל בין == ל === במשפט תנאי?

תשובה: הראשון בודק ערך בלבד והשני בודק גם סוג.

שאלה: מה פירוש הסימן & בהגדרת פרמטר בפונקציה?

תשובה: המשתנה שמועבר לפונקציה יכול להשתנות על ידי הפונקציה גם בקונטקסט המקורי שלו.

שאלה: מה הוא variables variables?

תשובה: מדובר בשם של משתנה שהוא משתנה בעצמו:

$$var

שאלה: מתי משתמשים ב-variable variables?

תשובה: כמעט ולא, אבל בעיקר במערכת שנסמכת על hooks.

שאלה: מה זה SQL Injection?

תשובה: באמצעים שונים הפורץ יכול לשכתב את שאילתות ה-MySQL שנשלחות אל מסד הנתונים ולמחוק/לחבל/להשיג גישה אל הנתונים.

שאלה: איך מגינים מ-SQL Injection?

תשובה: מפלטרים או עושים סניטציה על כל קלט מהמשתמש.

שאלה: למה לא משתמשים ב- GET_$ על מנת לשלוח ססמאות בטפסים?

תשובה: כי הדפדפן שומר אותן בהיסטוריה.

שאלות למתקדמים

שאלה: למה אין this במתודה סטטית?

התשובה: כי מתודה סטטית יכולה להיות מופעלת גם אם לא עשו instance ל-class.

שאלה: יש לי פונקציה שמבצעת שאילתה למסד הנתונים, אני קורא לה מספר רב של פעמים במהלך ריצה אחת, איך אני יכול לחסוך באמצעות PHP בלבד את מספר הקריאות למסד הנתונים?

תשובה: באמצעות static caching - לשמור את התשובה כמשתנה סטטי ולהחזיר אותה אם היא קיימת כבר. כך בזמן ריצה אחת השאילתה תרוץ רק פעם אחת.

שאלה: מתי משתמשים ב-Singleton?

תשובה: הדוגמה הקלאסית ביותר היא בזמן חיבור למסד הנתונים - כאשר רוצים להמנע מיותר מחיבור אחד למסד הנתונים.


פרטים על הבחור

רן בר זיק הוא מהנדס תוכנה בעל ניסיון רב שנים.
אם אתם פעילים בפייסבוק, קשה לפספס אותו שם.

יש לו בלוג שיעניין אתכם נורא, אם פיתוח תוכנה הוא יותר מעבודה בשבילכם