I denne opplæringen vil vi klone et PHP -objekt for å lage en kopi av objektet.
Bruker tildelingsoperatøren til å kopiere et objekt
Verdien av objektvariabelen kan kopieres til en annen variabel i PHP ved å bruke objektkloning. I PHP kan en grunne kopi av objektet opprettes ved å bruke nøkkelordet klon, og en dyp kopi av objektet kan opprettes ved å bruke metoden __Clone (). I det følgende eksemplet bruker vi nøkkelordklonen og metoden __Clone () Når en objektvariabel er tilordnet en annen variabel.
Bruk koden nedenfor for å opprette en PHP -fil som heter Utenclone.PHP, og lagre filen på webserverstedet. Her er en klasse som heter kurs erklært; Kurset inneholder en variabel, $ kurs_id, og en funksjon, Detaljer (). Funksjonen vil skrive ut kursdetaljene basert på kurs -ID. Neste, et objekt som heter $ objcourse er erklært for å få tilgang til klassemedlemmene.
En gang verdien av $ kurs_id tildeles ved hjelp av dette objektet og objektvariabelen er tilordnet $ objcrs, Begge variablene vil bruke samme sted i minnet for referansen. Derfor, hvis verdien av det ene objektet endres, vil det andre objektet automatisk bli endret hvis de blir kopiert.
// definere en klasseDu får følgende utdata etter å ha kjørt skriptet fra webserveren. Her, hvis verdien av $ OBJCRS endres, endres verdien av $ objCourse til samme verdi.
Bruke klonesnøkkelordet for å kopiere et objekt
De klon Nøkkelord kan brukes til å løse problemet ovenfor. Bruk følgende kode for å opprette en fil som heter klon.PHP. Den samme klassen brukes her. Objektet med klassen klones til et annet objekt ved å bruke klon nøkkelord for å opprette en kopi av objektet. Hvis verdien av en variabel endres, vil den ikke endre verdien på den andre variabelen.
// definere en klasseDu får følgende utdata etter å ha kjørt skriptet fra webserveren. Her, når verdien av $ OBJCRS endres, vil verdien av $ objcourse forbli uendret.
Ved hjelp av __clone () -metoden for å kopiere et objekt
De __Clone () Metode kan også brukes til å løse problemet ovenfor. Bruke koden Bwlow, lag en fil som heter med clonemethod.PHP. Den samme klassen brukes her. De __Clone () Metoden brukes i skriptet med klone nøkkelord. Denne metoden kalles automatisk når et objekt klones til et annet objekt. I følge skriptet tildeles en ny verdi for det klonede objektet inne i __Clone () metode.
// definere en klasseDu får følgende utdata etter å ha kjørt skriptet fra webserveren. Her, når $ objcrs klones, verdien endres av __Clone () metode, men verdien av $ objcourse forblir uendret. Verdien av $ objcourse skrives ut før og etter kloning. Verdien av $ objcrs skrives ut senere.
Konklusjon
Kloning er et nyttig trekk ved PHP som kan brukes til å lage en kopi av et objekt. Begge klon nøkkelord og __Clone () Metoden vises i denne opplæringen via enkle eksempler. Vi håper denne opplæringen hjalp deg med å forstå objektkloning.