Topp 100 PHP-intervjuspørsmål og -svar (PDF)

Her er PHP-intervjuspørsmål og svar for ferskere så vel som erfarne kandidater for å få drømmejobben.

 

PHP-intervjuspørsmål for nybegynnere


1) Hva er PHP?

PHP er et nettspråk basert på skript som lar utviklere dynamisk lage genererte nettsider.


2) Hva står initialene til PHP for?

PHP står for Hypertext Pre-processor.

👉 Gratis PDF-nedlasting: PHP-intervjuspørsmål og svar


3) Hvilket programmeringsspråk ligner PHP?

PHP-syntaksen ligner Perl og C


4) Hva står PEAR for?

PEAR betyr "PHP Extension and Application Repository". Det utvider PHP og gir et høyere nivå av programmering for webutviklere.


5) Hva er den faktisk brukte PHP-versjonen?

Versjon 7.1 eller 7.2 er den anbefalte versjonen av PHP.


6) Hvordan kjører du et PHP-skript fra kommandolinjen?

Bare bruk PHP-kommandolinjegrensesnittet (CLI) og spesifiser filnavnet til skriptet som skal utføres som følger:
php script.php


7) Hvordan kjører jeg det interaktive PHP-skallet fra kommandolinjegrensesnittet?

Bare bruk PHP CLI-programmet med alternativet -a som følger:
php -a


8) Hva er den riktige og de to vanligste måten å starte og fullføre en PHP-kodeblokk?

De to vanligste måtene å starte og fullføre et PHP-skript er:

 <?php [   ---  PHP code---- ] ?> and <? [---  PHP code  ---] ?>

9) Hvordan kan vi vise utdataene direkte til nettleseren?

For å kunne vise utdataene direkte til nettleseren, må vi bruke spesialkodene .


10) Hva er hovedforskjellen mellom PHP 4 og PHP 5?

PHP 5 presenterer mange ekstra OOP (Objektorientert programmering) funksjoner.


11) Støttes multippel arv i PHP?

PHP støtter kun enkeltarv; det betyr at en klasse kan utvides fra bare én enkelt klasse ved å bruke nøkkelordet "utvidet".


12) Hva er meningen med en siste klasse og en siste metode?

'final' er introdusert i PHP5. Endelig klasse betyr at denne klassen ikke kan utvides og en endelig metode ikke kan overstyres.


13) Hvordan gjøres sammenligningen av objekter i PHP?

Vi bruker operatoren '==' for å teste om to objekter er instansert fra samme klasse og har samme attributter og like verdier. Vi kan teste om to objekter refererer til samme forekomst av samme klasse ved å bruke identitetsoperatoren '==='.


14) Hvordan kan PHP og HTML samhandle?

Det er mulig å generere HTML gjennom PHP-skript, og det er mulig å overføre deler av informasjon fra HTML til PHP.


15) Hvilken type operasjon er nødvendig når du sender verdier gjennom et skjema eller en URL?

Hvis vi ønsker å sende verdier gjennom et skjema eller en URL, må vi kode og dekode dem ved å bruke htmlspecialchars() og urlencode().


16) Hvordan kan PHP og Javascript samhandle?

PHP og Javascript kan ikke samhandle direkte siden PHP er et serversidespråk og Javascript er et språk på klientsiden. Imidlertid kan vi utveksle variabler siden PHP kan generere Javascript kode som skal kjøres av nettleseren og det er mulig å sende spesifikke variabler tilbake til PHP via URL-en.


17) Hva skal til for å kunne bruke bildefunksjon?

GD-bibliotek er nødvendig for å utføre bildefunksjoner.


18) Hva er bruken av funksjonen 'imagetypes()'?

imagetypes() gir bildeformatet og typene som støttes av gjeldende versjon av GD-PHP.


19) Hvilke funksjoner skal brukes for å få bildets egenskaper (størrelse, bredde og høyde)?

Ocuco funksjoner er getimagesize() for størrelse, imagesx() for bredde og imagesy() for høyden.


20) Hvordan svikt i utførelse håndteres med include() og require() funksjoner?

Hvis funksjonen require() ikke får tilgang til filen, så ender den med en fatal feil. Imidlertid include() funksjonen gir en advarsel, og PHP-skriptet fortsetter å kjøre.


21) Hva er hovedforskjellen mellom require() og require_once()?

require()og require_once() utføre den samme oppgaven bortsett fra at den andre funksjonen sjekker om PHP-skriptet allerede er inkludert eller ikke før det kjøres.

(samme for include_once() og include())


22) Hvordan kan jeg vise tekst med et PHP-skript?

To metoder er mulige:

<!--?php echo "Method 1"; print "Method 2"; ?-->

23) Hvordan kan vi vise informasjon om en variabel og lesbar for et menneske med PHP?

For å kunne vise et menneskelesbart resultat bruker vi print_r().


24) Hvordan er det mulig å sette en uendelig utførelsestid for PHP-skript?

Set_time_limit(0) lagt til i begynnelsen av et skript setter til uendelig utførelsestid for ikke å ha PHP-feilen 'maksimal utførelsestid overskredet.' Det er også mulig å spesifisere dette i filen php.ini.


PHP-intervjuspørsmål og svar for erfarne

25) Hva betyr PHP-feilen 'Parse error in PHP – unexpected T_variable at line x'?

Dette er en PHP-syntaksfeil som uttrykker at en feil på linjen x stopper å analysere og kjøre programmet.


26) Hva bør vi gjøre for å kunne eksportere data til en Excel-fil?

Den vanligste og mest brukte måten er å få data til et format som støttes av Excel. Det er for eksempel mulig å skrive en .csv-fil, velge for eksempel komma som skilletegn mellom feltene og deretter åpne filen med Excel.


27) Hva er funksjonen file_get_contents() nyttig for?

file_get_contents() lar deg lese en fil og lagre den i en strengvariabel.


28) Hvordan kan vi koble til en MySQL database fra et PHP-skript?

For å kunne koble til en MySQL database, må vi bruke mysqli_connect()-funksjonen som følger:

<!--?php $database = mysqli_connect("HOST", "USER_NAME", "PASSWORD"); mysqli_select_db($database,"DATABASE_NAME"); ?-->

29) Hva er funksjonen mysql_pconnect() nyttig for?

mysql_pconnect() sikre en vedvarende tilkobling til databasen, betyr det at tilkoblingen ikke lukkes når PHP-skriptet avsluttes.

Denne funksjonen støttes ikke i PHP 7.0 og nyere


30) Hvordan håndteres resultatsettet av Mysql i PHP?

Resultatsettet kan håndteres ved å bruke mysqli_fetch_array, mysqli_fetch_assoc, mysqli_fetch_object eller mysqli_fetch_row.


31) Hvordan er det mulig å vite antall rader som returneres i resultatsettet?

Funksjonen mysqli_num_rows() returnerer antall rader i et resultatsett.


32) Hvilken funksjon gir oss antall berørte oppføringer av en spørring?

mysqli_affected_rows() returner antall oppføringer som er påvirket av en SQL-spørring.


33) Hva er forskjellen mellom mysqli_fetch_object() og mysqli_fetch_array()?

Ocuco mysqli_fetch_object() funksjonen samler den første enkelt matchende posten hvor mysqli_fetch_array() samler alle samsvarende poster fra tabellen i en matrise.


34) Hvordan kan vi få tilgang til dataene som sendes gjennom URL-en med GET-metoden?

For å få tilgang til dataene som sendes via GET-metoden, bruker vi $_GET-array som dette:

www.url.com?var=value
$variable = $_GET["var"]; this will now contain 'value'

35) Hvordan kan vi få tilgang til dataene som sendes via URL-en med POST-metoden?

For å få tilgang til dataene som sendes på denne måten, bruker du $_POST-matrisen.

Tenk deg at du har et skjemafelt kalt 'var' på skjemaet når brukeren klikker på send til innleggsskjemaet. Du kan da få tilgang til verdien slik:

$_POST["var"];

36) Hvordan kan vi sjekke at verdien av en gitt variabel er et tall?

Det er mulig å bruke den dedikerte funksjonen is_numeric() for å sjekke om det er et tall eller ikke.


37) Hvordan kan vi sjekke at verdien til en gitt variabel er alfanumerisk?

Det er mulig å bruke den dedikerte funksjonen, ctype_alnum for å sjekke om det er en alfanumerisk verdi eller ikke.


38) Hvordan sjekker jeg om en gitt variabel er tom?

Hvis vi vil sjekke om en variabel har en verdi eller ikke, er det mulig å bruke funksjonen empty().


39) Hva betyr unlink()-funksjonen?

Unlink()-funksjonen er dedikert for filsystemhåndtering. Det sletter ganske enkelt filen som er gitt som oppføring.


40) Hva betyr unset()-funksjonen?

Unset()-funksjonen er dedikert for variabeladministrasjon. Det vil gjøre en variabel udefinert.


41) Hvordan unnslipper jeg data før jeg lagrer dem i databasen?

Addslashes-funksjonen gjør det mulig for oss å unnslippe data før lagring i databasen.


42) Hvordan er det mulig å fjerne escape-tegn fra en streng?

Stripslashes-funksjonen gjør det mulig for oss å fjerne escape-tegnene før apostrof i en string.


43) Hvordan kan vi automatisk unnslippe innkommende data?

Vi må aktivere Magic quotes-oppføringen i konfigurasjonsfilen til PHP.


44) Hva betyr funksjonen get_magic_quotes_gpc()?

Funksjonen get_magic_quotes_gpc() forteller oss om de magiske anførselstegnene er slått på eller ikke.


45) Er det mulig å fjerne HTML-taggene fra data?

Strip_tags()-funksjonen lar oss rense en streng fra HTML-taggene.


46) hva er den statiske variabelen i funksjon nyttig for?

En statisk variabel er definert i en funksjon bare første gang, og verdien kan endres under funksjonskall som følger:

<!--?php function testFunction() { static $testVariable = 1; echo $testVariable; $testVariable++; } testFunction();        //1 testFunction();        //2 testFunction();        //3 ?-->

47) Hvordan kan vi definere en variabel som er tilgjengelig i funksjoner til et PHP-skript?

Denne funksjonen er mulig ved å bruke det globale søkeordet.


48) Hvordan er det mulig å returnere en verdi fra en funksjon?

En funksjon returnerer en verdi ved å bruke instruksjonen 'return $value;'.


49) Hva er den mest praktiske hashing-metoden for å hashe passord?

Det er å foretrekke å bruke crypt() som naturlig støtter flere hashing-algoritmer eller funksjonen hash() som støtter flere varianter enn crypt() i stedet for å bruke de vanlige hashing-algoritmene som md5, sha1 eller sha256 fordi de er tenkt å være raske. Derfor kan hashing av passord med disse algoritmene skape sårbarhet.


50) Hvilken kryptografisk utvidelse gir generering og verifisering av digitale signaturer?

PHP-OpenSSL utvidelsen gir flere kryptografiske operasjoner, inkludert generering og verifisering av digitale signaturer.


PHP-intervjuspørsmål for 5 års erfaring

51) Hvordan defineres en konstant i et PHP-skript?

Define()-direktivet lar oss definere en konstant som følger:

define ("ACONSTANT", 123);

52) Hvordan kan du sende en variabel ved referanse?

For å kunne sende en variabel ved referanse, bruker vi et og-tegnet foran den, som følger $var1 = &$var2


53) Vil en sammenligning av et heltall 12 og en streng "13" fungere i PHP?

"13" og 12 kan sammenlignes i PHP siden den kaster alt til heltallstypen.


54) Hvordan er det mulig å caste typer i PHP?

Navnet på utdatatypen må spesifiseres i parentes før variabelen som skal kastes som følger:

* (int), (heltall) – cast til heltall

* (bool), (boolsk) – støp til boolsk

* (flyte), (dobbel), (ekte) – kastet for å flyte

* (streng) – støp til streng

* (matrise) – cast til matrise

* (objekt) – kastet til objekt


55) Når avsluttes en betinget erklæring med endif?

Når originalen if ble fulgt av: og deretter kodeblokken uten klammeparenteser.


56) Hvordan brukes den ternære betingede operatoren i PHP?

Den er sammensatt av tre uttrykk: en betingelse og to operander som beskriver hvilken instruksjon som skal utføres når den spesifiserte betingelsen er sann eller usann som følger:

Expression_1?Expression_2 : Expression_3;

57) Hva brukes funksjonen func_num_args() til?

Funksjonen func_num_args() brukes til å gi antall parametere som sendes inn i en funksjon.


58) Hvis variabelen $var1 er satt til 10 og $var2 er satt til tegnet var1, hva er verdien av $$var2?

$$var2 inneholder verdien 10.


59) Hva betyr tilgang til en klasse via ::?

:: brukes for å få tilgang til statiske metoder som ikke krever objektinitialisering.


60) I PHP sendes objekter med verdi eller referanse?

I PHP sendes objekter ved referanse.


61) Kalles overordnede konstruktører implisitt inne i en klassekonstruktør?

Nei, en overordnet konstruktør må kalles eksplisitt som følger:

parent::constructor($value)

62) Hva er forskjellen mellom __søvn og __våkne?

__sleep returnerer matrisen med alle variablene som må lagres, mens __wakeup henter dem.


63) Hva er raskere?

1- Kombinere to variabler som følger:

$variable1 = 'Hello ';

$variable2 = 'World';

$variable3 = $variable1.$variable2;

Or

2- $variable3 = "$variable1$variable2";

$variable3 vil inneholde "Hello World". Den første koden er raskere enn den andre koden, spesielt for store store datasett.


64) hva er definisjonen på en økt?

En økt er et logisk objekt som gjør det mulig for oss å bevare midlertidige data på tvers av flere PHP-sider.


65) Hvordan starte en økt i PHP?

Bruken av funksjonen session_start() lar oss aktivere en økt.


66) Hvordan kan du spre en økt-ID?

Du kan spre en økt-ID via informasjonskapsler eller URL-parametere.


67) Hva er meningen med en vedvarende informasjonskapsel?

En vedvarende informasjonskapsel lagres permanent i en informasjonskapselfil på nettleserens datamaskin. Som standard er informasjonskapsler midlertidige og slettes hvis vi lukker nettleseren.


68) Når avsluttes øktene?

Økter avsluttes automatisk når PHP-skriptet er ferdig utført, men kan avsluttes manuelt ved å bruke session_write_close().


69) Hva er forskjellen mellom session_unregister() og session_unset()?

Session_unregister()-funksjonen avregistrerer en global variabel fra gjeldende sesjon og session_unset()-funksjonen frigjør alle sesjonsvariabler.


70) Hva betyr $GLOBALS?

$GLOBALS er assosiativ matrise inkludert referanser til alle variabler som for øyeblikket er definert i det globale omfanget av skriptet.


PHP-intervjuspørsmål for 10 års erfaring

71) Hva betyr $_SERVER?

$_SERVER er en matrise som inkluderer informasjon opprettet av webserveren, for eksempel baner, overskrifter og skriptplasseringer.


72) Hva betyr $_FILES?

$_FILES er en assosiativ matrise som består av elementer sendt til gjeldende skript via HTTP POST-metoden.


73) Hva er forskjellen mellom $_FILES['userfile']['name'] og $_FILES['userfile']['tmp_name']?

$_FILES['userfile']['name'] representerer det opprinnelige navnet på filen på klientmaskinen,

$_FILES['userfile']['tmp_name'] representerer det midlertidige filnavnet til filen som er lagret på serveren.


74) Hvordan kan vi få feilen når det er et problem med å laste opp en fil?

$_FILES['userfile']['error'] inneholder feilkoden knyttet til den opplastede filen.


75) Hvordan kan vi endre den maksimale størrelsen på filene som skal lastes opp?

Vi kan endre maksimal størrelse på filer som skal lastes opp ved å endre upload_max_filesize i php.ini.


76) Hva betyr $_ENV?

$_ENV er et assosiativt utvalg av variabler sendt til det gjeldende PHP-skriptet via miljømetoden.


77) Hva betyr $_COOKIE?

$_COOKIE er en assosiativ rekke variabler som sendes til det gjeldende PHP-skriptet ved hjelp av HTTP-informasjonskapsler.


78) Hva betyr omfanget av variabler?

Omfanget til en variabel er konteksten den er definert innenfor. For det meste har alle PHP-variabler bare et enkelt omfang. Dette enkeltomfanget spenner også over inkluderte og nødvendige filer.


79) hva er forskjellen mellom 'BITWISE AND'-operatoren og 'LOGICAL AND'-operatoren?

$a og $b: TRUE hvis både $a og $b er TRUE.

$a & $b: Bits som er satt i både $a og $b settes.


80) Hva er de to hovedstrengoperatorene?

Den første er sammenkoblingsoperatoren ('.'), som returnerer sammenkoblingen av høyre og venstre argumenter. Den andre er ('.='), som legger til argumentet til høyre til argumentet til venstre.


81) Hva betyr matriseoperatoren '==='?

$a === $b TRUE hvis $a og $b har samme nøkkel/verdi-par i samme rekkefølge og av samme type.


82) Hva er forskjellene mellom $a != $b og $a !== $b?

!= betyr ulikhet (TRUE hvis $a ikke er lik $b) og !== betyr ikke-identitet (TRUE hvis $a ikke er identisk med $b).


83) Hvordan kan vi finne ut om en PHP-variabel er et instansiert objekt av en bestemt klasse?

For å kunne verifisere om en PHP-variabel er et instansiert objekt av en bestemt klasse bruker vi instanceof.


84) Hva er goto-utsagnet nyttig for?

Goto-setningen kan plasseres for å aktivere hopping inne i PHP-programmet. Målet er pekt av en etikett etterfulgt av et kolon, og instruksjonen er spesifisert som en goto-setning etterfulgt av ønsket måletikett.


85) hva er forskjellen mellom Exception::getMessage og Exception:: getLine?

Exception::getMessage lar oss få unntaksmeldingen og Exception::getLine lar oss få linjen der unntaket skjedde.


86) Hva betyr uttrykket Exception::__toString?

Exception::__toString gir String-representasjonen av unntaket.


87) Hvordan er det mulig å analysere en konfigurasjonsfil?

Funksjonen parse_ini_file() gjør det mulig for oss å laste inn ini-filen spesifisert i filnavn og returnerer innstillingene i den i en assosiativ matrise.


88) Hvordan kan vi finne ut om en variabel er satt?

Den boolske funksjonen isset bestemmer om en variabel er satt og ikke er NULL.


89) Hva er forskjellen mellom funksjonene strstr() og stristr()?

Strengefunksjonen strstr(streng allString, streng occ) returnerer en del av allString fra den første forekomsten av occ til slutten av allString. Denne funksjonen skiller mellom store og små bokstaver. stristr() er identisk med strstr() bortsett fra at det ikke skiller mellom store og små bokstaver.


90) hva er forskjellen mellom for og foreach?

for er uttrykt som følger:

for (uttr1; uttr2; uttr3)

uttalelse

Det første uttrykket utføres én gang i begynnelsen. I hver iterasjon blir expr2 evaluert. Hvis det er TRUE, fortsetter loopen, og setningene i for blir utført. Hvis den evalueres til FALSE, avsluttes utførelsen av loopen. expr3 testes på slutten av hver iterasjon.

Foreach gir imidlertid en enkel måte å iterere over matriser, og den brukes bare med matriser og objekter.


91) Er det mulig å sende inn et skjema med en dedikert knapp?

Det er mulig å bruke document.form.submit() funksjon for å sende inn skjemaet. For eksempel: <input type=button value="SUBMIT" onClick="document.form.submit()">


92) Hva er forskjellen mellom ereg_replace() og eregi_replace()?

Funksjonen eregi_erstatt() er identisk med funksjonen ereg_erstatt() bortsett fra at den ignorerer skille mellom store og små bokstaver når alfabetiske tegn matches.


93) Er det mulig å beskytte spesialtegn i en spørringsstreng?

Ja, vi bruker funksjonen urlencode() for å kunne beskytte spesialtegn.


94) Hva er de tre feilklassene som kan oppstå i PHP?

De tre grunnleggende feilklassene er varsler (ikke-kritiske), advarsler (alvorlige feil) og fatale feil (kritiske feil).


95) Hva er forskjellen mellom tegnene \034 og \x34?

\034 er oktal 34 og \x34 er hex 34.


96) Hvordan kan vi sende variabelen gjennom navigasjonen mellom sidene?

Det er mulig å overføre variablene mellom PHP-sidene ved hjelp av økter, informasjonskapsler eller skjulte skjemafelt.


97) Er det mulig å forlenge utførelsestiden for et PHP-skript?

Bruken av set_time_limit(int sekunder) gjør det mulig for oss å forlenge utførelsestiden for et PHP-skript. Standardgrensen er 30 sekunder.


98) Er det mulig å ødelegge en informasjonskapsel?

Ja, det er mulig ved å sette informasjonskapselen med en tidligere utløpstid.


99) Hva er standard sesjonstid i PHP?

Standard sesjonstid i php er frem til lukking av nettleseren


100) Er det mulig å bruke COM-komponent i PHP?

Ja, det er mulig å integrere (Distribuert) Component Object Model-komponenter ((D)COM) i PHP-skript som er gitt som et rammeverk.


101) Forklar om det er mulig å dele en enkelt forekomst av en Memcache mellom flere PHP-prosjekter?

Ja, det er mulig å dele en enkelt forekomst av Memcache mellom flere prosjekter. Memcache er en minnelagringsplass, og du kan kjøre memcache på en eller flere servere. Du kan også konfigurere klienten til å snakke med et bestemt sett med forekomster. Så du kan kjøre to forskjellige Memcache-prosesser på samme vert og likevel er de helt uavhengige. Med mindre, hvis du har partisjonert dataene dine, blir det nødvendig å vite fra hvilken instans du skal hente dataene fra eller legge dem inn.


102) Forklar hvordan du kan oppdatere Memcached når du gjør endringer i PHP?

Når PHP endres kan du oppdatere Memcached av

  • Tømme bufferen proaktivt: Tømme bufferen når en innsetting eller oppdatering gjøres
  • Tilbakestille cachen: Det ligner på den første metoden, men i stedet for bare å slette nøklene og vente på neste forespørsel om at dataene skal oppdatere hurtigbufferen, tilbakestill verdiene etter innsetting eller oppdatering.

Disse intervjuspørsmålene vil også hjelpe i din viva(orals)