Konverter objekt til streng PHP

Konverter objekt til streng PHP
For ethvert objektivt orientert programmeringsspråk er begrepene objekter og strenger grunnleggende byggesteiner. PHP er avhengig av objekter og strenger for å gi fleksibilitet og funksjoner. Denne artikkelen vil diskutere hvordan du kan konvertere et PHP -objekt til en streng ved hjelp av forskjellige metoder.

Ved hjelp av print_r () -funksjonen

Den første teknologien vi kan bruke for å konvertere et objekt til en streng er print_r -funksjonen. Funksjonen tar verdien å skrives ut og en returparameter. Returparameteren er en boolsk verdi.

For å konvertere et objekt til en streng ved hjelp av print_r -funksjonen, kan vi for eksempel gi objektet som den første parameteren (verdien som skal skrives ut på skjermen) og en boolsk sann som den andre parameteren.

Syntaksen til funksjonen er som vist:

print_r (blandet $ verdi, bool $ retur);

Som standard er den boolske verdien satt til falsk. Hvis ikke gitt, vil print_r -funksjonen skrive ut verdien av variabelen som er gitt.

La oss ta et enkelt eksempel. Vi vil lage en enkel bilklasse med to variabler: navnet og prisen. Vi vil opprette en konstruktør med navn og pris som parametere og variablene.

Til slutt oppretter vi et objekt fra bilklassen og gir dem eksempler på data for navn og pris. For å konvertere objektet til en streng, vil vi bruke print_r -funksjonen som vist i eksemplet nedenfor:

klassebil
beskyttet $ navn;
beskyttet $ pris;
offentlig funksjon __construct ($ name, $ pris)
$ this-> name = $ name;
$ this-> pris = $ pris;


$ MyCAR = ny bil ("Ford", 25000);
$ obj_str = print_r ($ mycar, true);
ekko $ obj_str;
?>

Når du har kjørt eksemplet ovenfor, bør du se og sende ut med den objektive konverterte til en streng.

PHP Magic Methods (_ToString ())

Den andre teknikken vi kan bruke for å konvertere et objekt til en streng er _toString () -funksjonen. Denne funksjonen er definert som en del av PHP Magic -funksjonen. _ToString () -funksjonen godtar ingen argumenter og har en returverdi på strengen.

Følgende eksempel viser hvordan du bruker funksjonen til å returnere et objekt som en streng.

klassebil
privat $ navn;
privat $ pris;
offentlig funksjon __construct ($ name, $ pris)
$ this-> name = $ name;
$ this-> pris = $ pris;

offentlig funksjon __ToString ()
Returner "bilmodell $ dette-> navn. Pris $ this-> pris ";


$ MyCAR = ny bil ("Ford", "25000");
ekko $ mykar;
?>

Eksemplet over er tett identisk med det forrige. Vi bruker imidlertid __ToString -metoden for å konvertere objektet til en streng. Utgangen fra eksemplet ovenfor er som vist:

Bilmodell Ford. Pris 25000

Hvis du fjerner __ToString () -metoden og prøver å kjøre kommandoen over, bør du se en feil som:

PHP Fatal Feil: UNDAGED FEIL: Objekt av klassebil kunne ikke konverteres til streng.

PHP Serialize () -funksjon

La oss nå se på en mer ikke-konvensjonell måte å konvertere et objekt til en streng. Serialize () -metoden konverterer en spesifisert verdi til en byte-stream. Denne funksjonen er riktig når du trenger å lagre en økt. Ved hjelp av Serialize () -funksjonen kan vi passere objektet og returnere en byte -sekvens.

Et eksempelbruk kan vises i koden nedenfor.

klassebil
privat $ name = "Ford";
privat $ pris = "25000 $";
offentlig funksjon som_car ()
ekko "modell: $ this-> navn og pris: $ this-> pris", "\ n";


$ MyCAR = ny bil;
$ mycar-> what_car ();
$ Serialized = Serialize ($ MyCar);
ekko $ serialisert;
?>

Når vi har kjørt ovennevnte kode, skal koden returnere en serialisert streng som vist:

Modell: Ford og pris: 25000 $
O: 3: "bil": 2: s: 7: "*navn"; s: 4: "Ford"; s: 8: "*pris"; s: 6: "25000 $";

Lukking

Denne opplæringen viser deg forskjellige måter å konvertere et objekt til en streng ved hjelp av PHP. Husk at det er mer med funksjonene enn diskutert i denne opplæringen. Se i dokumentasjonen for å finne ut mer.