Gå til innhold

[Løst]Hva betyr .= ?


Anbefalte innlegg

Hei!

 

Jeg driver og ser litt på et script her, og flere steder er det .= som viser til verdien til en variabel istedenfor bare et vanlig = tegn.

 

Et eksempel på dette er:

 

$q .= ($q ? "&" : "") . "class=$class";

 

Når jeg prøver f.eks:

 

<?php
$q .= "Hei du:-)";
echo "$q";
?>

 

og når jeg prøver:

 

<?php
$q = "Hei du:-)";
echo "$q";
?>

 

blir utdataen helt lik...

 

Så hva er egentlig forskjellen mellom = og .=?

 

Og ja, jeg prøvde å søke på google, men pga .= ikke inneholdt noen bokstaver eller tall så fikk jeg ikke søkt.

Takk for svar:)

Endret av PuterDude
Lenke til kommentar
Videoannonse
Annonse

Med .= legger du til en verdi i tillegg til verdien som er der. Flere år siden jeg nærmet meg PHP, men såvidt jeg husker outputter dette "hei på deg":

 

$q = "hei";

$q .= " på deg";

echo $q

 

Correct me if I'm wrong ;)

Endret av Arne
Lenke til kommentar

Vil forøvrig ikke anbefale å opprette variabler på denne måten, men kun bruke dette for å legge til ekstra innhold. Dette blant annet fordi du vil risikere å du lett vil miste oversikten over hvilke variabler som allerede dersom du gjør det slik. I enkelte tilfeller vil du også få feilmeldinger dersom du legger til (ekstra) innhold til en variabel som ikke eksisterer.

Endret av funkyboy
Lenke til kommentar
Vil forøvrig ikke anbefale å opprette variabler på denne måten, men kun bruke dette for å legge til ekstra innhold. Dette blant annet fordi du vil risikere å du lett vil miste oversikten over hvilke variabler som allerede dersom du gjør det slik. I enkelte tilfeller vil du også få feilmeldinger dersom du legger til (ekstra) innhold til en variabel som ikke eksisterer.

Er du usikker på om en variabel allerede eksisterer eller er brukt, så er det på tide å splitte koden i flere funksjoner/klasser/metoder.

Lenke til kommentar

Noen som har testet forskjeller på kodevaner som gir og ikke gir masse E_NOTICE, med hensyn på hastighet? Jeg viser selv aldri disse, synes det er noe forferdelig herk.. $i++ i en loop er eksempelvis noe som gir E_NOTICE ved første iterasjon når man ikke gidder å definere den først.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...