$a .= $b | == | $a = $a + $b

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Raymond de graaf

raymond de graaf

29/02/2012 12:27:44
Quote Anchor link
hallo,

ik kom dit tegen in me boek en dat geeft me STORING!

snap er niks van


$a .= $b is gelijk aan $a = $a + $b | helder tot zover

gaan we het toepassen op deze manier

$boodschap .= $varnaam . " = " . $varinhoud . "<br />\n";

hier word gebruik gemaakt van 3 (boodschap,varnaam,varinhoud) variabelen, moet ik dit dan zo zien?

$a = $a + $b + $c?

krijg hoofdpijn als ik dat .= lees!

tnks
 
PHP hulp

PHP hulp

24/11/2024 16:14:59
 
- SanThe -

- SanThe -

29/02/2012 12:32:02
Quote Anchor link
De punt (.) staat, simpel gezegd, voor het aan elkaar plakken.
Een plus (+) staat in php voor optellen (1+2+3) van getallen.
 
Wouter J

Wouter J

29/02/2012 12:35:04
Quote Anchor link
Wat je eigenlijk doet:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php

$boodschap
= 'Hello World';
$varnaam = ' Some var';
$varinhoud = 'Foobaar';

$boodschap .= $varnaam.' = '.$varinhoud."<br />\n";
// is hetzelfde als
$boodschap = $boodschap . $varnaam . ' = ' . $varinhoud . "<br />\n";
// is
$boodschap = 'Hello World' . ' Some var' . ' = ' . 'Foobaar' . "<br />\n";
// en dat is
$boodschap = "Hello World Some var = Foobaar <br />\n";
?>
 
Ozzie PHP

Ozzie PHP

29/02/2012 12:35:31
Quote Anchor link
Je ziet het goed hoor.

Die .= betekent niks meer dan "Vul de variabele aan met..."

$naam = 'Raymond';
$naam .= ' de Graaf'; (dit betekent dus "Vul de variabele $naam aan met ' de Graaf')

Een . betekent dat er iets aan elkaar wordt geplakt.

$hallo = 'hoi';
$tekst = $hallo . 'tekst 1' . 'tekst 2' . 'tekst 3';
echo $tekst; (dit toont "hoitekst1tekst2tekst3" op het scherm)
 
Bas IJzelendoorn

Bas IJzelendoorn

29/02/2012 12:36:52
Quote Anchor link
Inderdaad

Daarbij is het in dit geval ook zo dat de 1e = niet zoveel extra waarde toevoed:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
$boodschap
= 1;
$varnaam = 2;
$varinhoud = 1;

echo $boodschap . $varnaam . " = " . $varinhoud . "<br />\n";
echo $boodschap .= $varnaam . " = " . $varinhoud . "<br />\n";
?>


Om het verhaal van SanThe te onderbouw, kijk eens wat er gebeurd als de de punt (.) weghaald achter variabele boodschap. Dan krijg je gelijk een parse error voor je kiezen.
 
Raymond de graaf

raymond de graaf

29/02/2012 12:38:01
Quote Anchor link
- SanThe - op 29/02/2012 12:32:02:
De punt (.) staat, simpel gezegd, voor het aan elkaar plakken.
Een plus (+) staat in php voor optellen (1+2+3) van getallen.


waarom is het dan niet gewoon zo?

a$ = $b + $c?

als je dan a echo't heb je toch ook de waarde van $b en $c eruit?
 
Wouter J

Wouter J

29/02/2012 12:40:22
Quote Anchor link
@Raymond, kijk eens hiernaar:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$getal1
= 15;
$getal2 = 45;

echo $getal1 . $getal2; // geeft 1545
echo $getal1 + $getal2; // geeft 60
?>


De . pak dus de 2 variabele en plakt die letterlijk aan elkaar en de + is een wiskundig geval en die telt de 2 waardes bij elkaar op. In PHP is het zo dat mocht je 2 strings met + aan elkaar plakken het de + voor . aanziet, maar dat hoort eigenlijk niet.
 
- SanThe -

- SanThe -

29/02/2012 12:45:08
Quote Anchor link
Raymond de graaf op 29/02/2012 12:38:01:
a$ = $b + $c?

als je dan a echo't heb je toch ook de waarde van $b en $c eruit?


Als $b en $c getallen zijn dan komt de som (optelling) in $a terecht.
Zijn $a en $b geen getallen dan zal php het proberen op te tellen met als resultaat nul. Bij getallen gebruik je een + (of ander rekenkundig teken) en bij strings gebruik je een punt.
 
Raymond de graaf

raymond de graaf

29/02/2012 14:45:45
Quote Anchor link
bedankt voor de vele reacties!

ga er ff mee klooien :)

tnks
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.