Interviul Php 1

Ai nevoie de un interviu în PHP pentru a obține un loc de muncă ca programator PHP? Mai ales pentru dvs., dezvoltatorii experimentați s-au reunit pentru a împărtăși întrebările pe care le adresează în timpul interviului.

Interviul Php 1







"Unul dintre cele mai importante lucruri pe care le privesc este lucrarea persoanei pe care o intervievez. Încerc să găsesc dezvoltatori bazați pe curiozitate care învață în mod constant noile tehnologii. "

Întrebare la interviul din PHP # 1: "Care este diferența dintre include () și cer ()?"

includ proiectare. în contrast cu a cere. vă permite să includeți fișiere în codul de script PHP în timpul executării scriptului. Să explicăm acest lucru cu un exemplu, după ce ați încercat să conectați 5 fișiere 1.txt, 2.txt. 5.txt. Conținutul fișierelor sunt numere zecimale de la 1 la 5 (o singură cifră în fiecare fișier). Creați următorul script PHP:

Ie fiecare fișier a fost inclus o dată la un moment dat în timpul executării ciclului! Dacă scriem cereți în loc să includem. atunci va exista o eroare critică (eroare fatală).

Diferența dintre include și cere, de asemenea, este faptul că necesită aruncă Eroare fatală atunci când fișierul nu poate fi conectat pentru orice motiv. include va emite Avertisment și va continua să lucreze.

Această întrebare poate arăta intervievatorului cât de creativ și creativ este candidatul, pentru că răspunsurile pot fi stabilite. Codul $ _SERVER ["REMOTE_ADDR"]; este cea mai simplă soluție, dar puteți scrie un scenariu real, răspunzând la această întrebare.

Întrebare în interviul pe PHP # 3: Care este diferența dintre unset () și unlink ()?

unset () stabilește variabila la "undefined", în timp ce unlink () șterge fișierul trimis de sistemul de fișiere.

Întrebare despre PHP # 4: ce va afișa următorul cod:

"În timpul unui interviu cu un potențial candidat la un post de programator PHP, mă străduiesc să înțeleg cât de bine sunt conștienți de noile funcții ale limbajelor de programare, precum și de nivelul lor de înțelegere a operațiunilor de bază. În opinia mea, acest lucru va determina cât de bun va fi dezvoltatorul în viitor ".

Întrebare cu interviul pe PHP # 5: Care sunt principalele tipuri de erori în PHP și cum diferă acestea?

În PHP, există trei tipuri principale de erori:

Observații Simple, non-critice erori care au avut loc în timpul executării script-ului. Un exemplu de Notificări de apariție este referința la o variabilă nedefinită. Avertismente (avertismente) Erorile mai grave decât notificările. cu toate acestea, executarea scriptului nu va fi întreruptă. Un exemplu ar fi conectarea unui fișier existent cu include (). Fatal (critic) Acest tip de eroare determină stoparea scriptului. Un exemplu de eroare fatală este accesul la proprietatea unui obiect inexistent sau cerința () unui fișier inexistent. Înțelegerea tipurilor de erori este foarte importantă dacă sunteți nou în programare, deoarece acestea vă vor ajuta să înțelegeți ce se întâmplă în procesul de dezvoltare și vă va informa despre ce ar trebui să căutați în cod în timpul depanării.

Întrebarea care poate fi auzită la interviul pe PHP # 6: Care este diferența dintre GET și POST?
  1. GET trimite date ca parte a adresei URL, în timp ce cu POST, aceste informații nu sunt afișate, deoarece sunt codate în cerere.
  2. GET se poate ocupa de maxim 2048 de caractere, POST nu are astfel de restricții.
  3. GET funcționează numai cu date ASCII, POST nu are restricții, sunt permise și date binare.
  4. De obicei, GET este folosit pentru a obține date și POST pentru a adăuga și actualiza.

Înțelegerea principiilor de bază ale protocolului HTTP este foarte importantă pentru un început bun ca dezvoltator PHP, iar diferențele dintre GET și POST fac parte integrantă din acesta.

Întrebarea nr. 7: Cum activați mesajele de eroare în PHP?

Setați display_errors = activat în php.ini sau declarați ini_set ('display_errors', 1) în scriptul dvs. Apoi, adăugați error_reporting (E_ALL) la codul dvs. pentru a afișa toate tipurile de mesaje de eroare în timpul executării de script-uri.

Includerea mesajelor de eroare este foarte importantă, în special în procesul de depanare, deoarece puteți afla instantaneu șirul care produce eroarea și, de asemenea, asigurați-vă că scriptul funcționează corect.

Întrebarea nr. 8: Care sunt trăsăturile?

Trăsăturile reprezintă un mecanism care vă permite să creați codul reutilizabil în limbi precum PHP unde moștenirea multiplă nu este acceptată. Nu poate fi creat singur.

Este foarte important ca dezvoltatorul să cunoască capacitățile puternice ale limbii (limbilor) cu care lucrează, iar Treit este o astfel de caracteristică.

Întrebarea PHP care poate pune întrebarea # 9: Se poate modifica valoarea constantă în timpul executării scriptului?

Nu, valoarea constantei nu poate fi schimbata daca a fost deja declarata in timpul executarii codului PHP.

Întrebarea nr. 10: Puteți extinde o anumită clasă finală?
Întrebarea # 11: Ce fac metodele __construct () și __destruct () în clasa PHP?

Toate obiectele din PHP au constructor-constructor și metode de distrugere. Metoda Constructor este apelată imediat după crearea unei noi instanțe a clasei și este utilizată pentru a inițializa proprietățile clasei. Metoda Destructor nu ia nici un parametru.

Înțelegerea acestor două metode PHP înseamnă că candidatul cunoaște elementele de bază ale programării orientate obiect în PHP.

Întrebarea nr. 12: Cum putem obține numărul de elemente într-un matrice?

Funcția count () este folosită pentru a returna numărul elementelor dintr-un matrice.

Înțelegerea matricelor și a funcțiilor auxiliare asociate este ceva ce fiecare dezvoltator de juniori trebuie să știe.

"Aș dori ca dezvoltatorul de juniori PHP să cunoască elementele de bază ale programării și cum să le aplice în PHP. Nu am nevoie de el să cunoască toate funcțiile și termenii după nume. "







Întrebarea nr. 13: Cum ați declara o funcție care are un singur parametru salut?

Dacă salutăm = adevărat. atunci funcția trebuie să fie bună. dar dacă funcția nu este salutată sau salută = falsă. atunci funcția trebuie să fie tipărită la revedere.

În această privință, intervievatorul poate evalua dacă dezvoltatorul știe cum să declare o funcție și cum va determina dacă un parametru poate fi apelat de o funcție. Intervievatorul poate, de asemenea, să evalueze dacă dezvoltatorul cunoaște sintaxa și dacă știe să tipărească text (funcția de ecou).

PHP-question # 14: Valoarea $ input este un șir de formula 1,2,3,4,5,6,7. Cum se calculează suma numerelor din această linie?

Funcția de explodare este una dintre cele mai utilizate funcții din PHP, deci este foarte important să înțelegeți dacă dezvoltatorul cunoaște această funcție. Nu există un răspuns clar la această întrebare, dar răspunsul ar trebui să fie similar cu cel prezentat mai sus.

PHP Întrebarea # 15: Să presupunem că aveți o formă de sub-feed pentru buletinul informativ.

În această întrebare, vă veți evalua cunoștințele despre lucrul cu formularele și validarea acestora. Nu există un răspuns clar la această întrebare, dar ar trebui să arate ca cel prezentat mai sus.

Întrebarea nr. 15: Lucrul cu clasele

Implementați o clasă numită Dragonball cu atributul ballCount. egal cu zero, și metoda iFoundaBall. Când este apelat iFoundaBall. balonul este incrementat cu unul. Dacă valoarea BallCount este de șapte, ar trebui să apară mesajul "Make a wish", iar valoarea ballCount va fi din nou zero.

Această întrebare va evalua cunoștințele candidatului despre programarea orientată pe obiecte.

PHP Întrebarea # 16: Care sunt cele 3 domenii de vizibilitate în PHP?

Privat Vizibil numai în propria clasă Public Vizibil la orice alt cod care accesează clasa Protected Vizibil numai la clasele și clasele părinte care extind clasa curentă

Este important să cunoașteți fiecare dezvoltator, deoarece arată în esență că știe și înțelege principiile de programare și nu știe doar cum să introducă codul. De asemenea, este necesar să se înțeleagă avantajele și disponibilitatea codurilor. De asemenea, este necesar să se înțeleagă esența protecției variabilelor și metodelor, deoarece acest lucru în combinație oferă protecție pentru toate datele din aplicație.

PHP Întrebarea # 17: Ce sunt getters și setters și ce sunt pentru ei?

Știind despre getters și setters este important pentru orice programator care caută un loc de muncă care dezvoltă aplicații web. Getters și setters sunt adesea folosiți atunci când lucrați cu obiecte, în special cele care se vor afla într-o bază de date sau în altă locație de stocare. Deoarece PHP este frecvent folosit pentru a crea aplicații web, chiar și specialistul junior se va întâlni cu getters și setters în medii mai avansate. Getters și setters sunt foarte puternice, dar rareori sunt menționate. Puteți face o impresie plăcută asupra intervievatorului, știind ce sunt și cum să le utilizați.

Întrebarea de interviu # 18: Ce înseamnă MVC și ce face fiecare componentă?

MVC reprezintă modelul (View) Controller (Constructor).

Controlorul procesează datele trimise către acesta de către Vizualizare și, de asemenea, transferă datele către Vizualizare. El este responsabil pentru interpretarea datelor trimise de Vizualizare și distribuirea acestor date modelelor potrivite pentru a le transfera înapoi la Vizualizare.

Sarcina modelului este de a procesa sarcini individuale legate de anumite domenii ale aplicației sau funcționale. Modelele interacționează direct cu o bază de date sau cu alt sistem de stocare a datelor și procesează logica de afaceri relevantă pentru rezultate.

Vederea este datele transferate de controler și afișate utilizatorului.

În general, în această chestiune este bine de înțeles, pentru că acum MVC este folosit foarte mult unde și în general este un șablon de design foarte bun. Chiar și sistemele mai avansate care funcționează cu depozitele și obiectele sunt ghidate de aceleași principii ca și Controller și View. Modelul este, de obicei, împărțit în mai multe componente pentru a gestiona sarcinile specifice legate de bazele de date, logica de afaceri etc. Modelul de design MVC ajută la înțelegerea a ceea ce se utilizează exact în producție în ansamblu.

Întrebarea # 19: Cum pot preveni apariția următorului avertisment: "Avertisment: Nu pot modifica informațiile antetului (anteturile deja trimise)" și de ce apare în primul rând?

Nu afișați nimic browserului înainte de a utiliza codul care convertește antetele HTTP. După ce apelați ecou sau orice alt cod care șterge buffer-ul, nu mai puteți aloca "cookie-uri" sau anteturi. De asemenea, este potrivit pentru mesajele de eroare, așa că, dacă apare o eroare înainte de a utiliza antet comandă și INI directiva display_errors este stabilit, de asemenea, acesta afișează un mesaj de eroare.

Întrebarea nr. 20: Ce este injecția SQL și care sunt cele mai eficiente metode de prevenire a acestora?

Injecțiile SQL sunt o metodă de modificare a unei interogări într-o instrucțiune SQL trimisă la un server de bază de date. Această solicitare modificată poate să ignore aceste informații ca login / password și poate încuraja hackerii să expună serverul la o amenințare.

Pentru a preveni injectarea SQL, trebuie să verificați și să ștergeți în mod constant toate intrările utilizatorilor. În PHP, acest lucru este adesea uitat din cauza ușurinței accesului la $ _GET și $ _POST. și, de asemenea, din cauza lipsei de atenție a dezvoltatorilor începători. Există însă și multe metode prin care utilizatorii pot manipula variabilele utilizate în SQL, prin cookie-uri și chiar prin descărcări de fișiere. Singura modalitate reală de protejare este aceea de a consuma în mod constant operatorii recoltați.

Nu utilizați funcțiile mysql_ * (începând cu PHP 5.5), dar utilizați DOP de atunci vă permite să utilizați alte servere decât MySQL. Puteți utiliza, de asemenea, mysqli_ * dar în aceste zile nu are sens să nu folosiți PDO, ODBC sau DBA. În mod ideal, puteți utiliza Propel sau Doctrina, pentru a evita SQL-interogări scris toate împreună, și de a folosi o mapare referitoare la obiectele, care face legătura între liniile din obiectele bazei de date ale aplicației.

Întrebarea nr. 21: Ce face următorul cod?

Ieșirea 7. Zgomotul inițial din PHP indică un număr octal, deci $ i este calculat ca număr zecimal de 14, nu 16.

Întrebarea nr. 22: De ce să folosim === în loc de ==?

Dacă doriți să verificați un anumit tip, cum ar fi întreg sau o valoare boolean, atunci === va face exact ceea ce se așteaptă de tastat în mod specific de comandă, în timp ce == va converti datele numai pentru un timp și să încerce să compare cele două tip operanzi. Operatorul identic (===) funcționează mai repede, deoarece nu trebuie să faceți față conversiilor de tip. Mai ales când verificăm variabilele pentru true / false, este mai bine să evităm == de atunci 0/1 sau un alt formular similar va fi, de asemenea, luată în considerare.

Întrebarea # 23: Ce este PSR?

PSR reprezintă un set de recomandări privind standardele PHP care vizează standardizarea aspectelor comune ale dezvoltării PHP. Un exemplu de PSR este PSR-2, care este un fel de ghid în stilurile de codare.

Întrebarea nr. 24: Ce standarde PSR urmați? De ce să urmez standardul PSR?

Este mai bine să urmați PSR, deoarece Standardele de programare variază adesea între dezvoltatori și companii. Acest lucru poate crea probleme dezvoltatorului atunci când verifică sau corectează codul scris de o altă persoană. Standardul PSR vă permite să raționalizați așteptările din stilul codului scris și, prin urmare, reduceți probabilitatea de neînțelegere și, în unele cazuri, de erori sintactice.

Întrebarea nr. 25: Folosiți compozitorul? Dacă da, ce avantaje ați găsit în ea?

Utilizarea Compozitorului este un instrument pentru gestionarea dependențelor. Puteți declara bibliotecile cu care lucrați și Compozitor le va instala și actualiza. Un alt avantaj este metoda consistentă de gestionare a bibliotecilor cu care lucrați, astfel încât veți petrece mai puțin timp în acest management, care se ocupă de proiectul dvs.

Ce altceva pot cere în timpul compilației PHP?

  • Descrieți modul în care moștenirea funcționează în PHP.
  • Ce știi despre PHP-FIG? Descrieți-l, precum și cele PSR pe care le cunoașteți.
  • Ce clase ați crea pentru a construi un sistem de stare de bază într-un stil Twitter cu OOP?
  • Ce cadre preferați? De ce?
  • Ce crezi despre unitatea de testare?

Interviul Php 1

  • unitate
Joc 2D pe Unitate. Un ghid detaliat. Partea 1





Articole similare

Trimiteți-le prietenilor: