variable in string

Status
Niet open voor verdere reacties.

jellever

Gebruiker
Lid geworden
7 feb 2008
Berichten
401
Hey Helpmij,

Ik ben recent met een opleiding Informatica gestart op de haagse hogeschool:) Nu met een hoorcollege PHP werd er uitgelegd dat je ook variable binnen qoutes kan gebruiken zoals:
PHP:
<?php
$string1="bla";
$string2="$string1 bla2";
?>

Ik ken zelf al een tijdje PHP via online tutorials. Daar is mijn een beetje bij gebleven dat dit wel kan maar niet netjes is. Elke keer als ik een probleem had en dit poste op sitemasters.be bijvoorbeeld werd ik gecorrigeerd dat variablen buiten qoutes moeten. Hoe zit dit nu?

M.v.g. Jelle
 
Er zijn heel veel dingen die kunnen, er zijn minder dingen die netjes zijn. Als ze je leren dat het gebruik van variabelen binnen strings goed is, dan leren ze het je verkeerd want het is inderdaad niet mooi. Het kan wel degelijk, maar ze zouden ze eigenlijk vanaf het begin al moeten leren dat het slecht leesbaar is en dus niet aan te raden.

Ik zou het even aan je docent vragen; uiteindelijk beoordeelt hij je toetsen en niet wij maar over het algemeen is variabelen buiten de strings houden netter. Vraag hem gewoon wat zijn reden is om het jullie zo te leren, misschien heeft hij er wel een goede reden voor.
 
is goed:0 zal het de volgende keer is vragen wat voor bedoeling erachter zit..

Je zou toch wel denken dat zon leraar op een hogeschool wel weet hoe het moet:confused:
 
Dat zou je denken tot je er een paar ontmoet. De meeste programmeurs zijn eigenlijk bijzonder matig, en de echt goeie krijgen veel te goed betaald om leraar te worden ;)
 
je doet dit

PHP:
$var = "mijn bovenstaande var was $bovenstaandevar dat je nu ziet";
of je doet dit
PHP:
$var = 'mijn bovenstaande var was'. $bovenstaandevar.'dat je nu ziet';


bij deze wordt elke "" string bekeken en ook \n wordt enter enz.
bij volgend ander '' string char wordt het niet bekeken en wordt \n uitgeprint en variabelen worden dan ook als string getoond dus niet de waarde

hier zeg je dat je site niet snel hoeft te zijn en niet weet hoe het zit
PHP:
$var = "mijn bovenstaande var was". $bovenstaandevar."dat je nu ziet";
dit doe je dan nooit
PHP:
$var = 'mijn bovenstaande var was  $bovenstaandevar dat je nu ziet';

bijgevolg heb je veel docenten die dit beweren
include = require

maar het is echter niet zo er zeer groot verschil en dit komt als je include doet in een file waar een include gebeurt.

include wil zeggen dat de code wordt uitgevoerd op de plaats waar je die aanroept
require wil zeggen dat de code wordt uitgevoerd op de plaats waar die staat

bij gevolg zal je een include na een include het het path er anders uit zien als
bij gevolg dat er een require na een require er uitziet
 
Uhm. Het grote verschil tussen "include" en "require" is dat require een keiharde FATAL geeft als hij de file niet kan vinden en include alleen warning gooit en gewoon doorgaat. Van die paden heb ik nog nooit gehoord, maar dat klopt volgensmij niet eens... hij blijft altijd hangen in de PATH van de eerst aangeroepen file.
 
frats dat had ik niet van jou verwacht test eens het is basis en zou je moeten weten tss tss tss
 

Bijlagen

Ik heb het niet getest, maar als dat zo is dan is de uitleg op de PHP-site wel erg beroerd:
require() is identical to include() except upon failure it will also produce a fatal E_COMPILE_ERROR level error. In other words, it will halt the script whereas include() only emits a warning (E_WARNING) which allows the script to continue.

See the include() documentation for how this works.
 
Ik heb je test wel even bekeken en ik zie nog steeds het idee niet. Zowel de basis include/require als de andere includes/requires worden netjes geinclude vanuit de base dir waar de test in begonnen is, zoals je zou verwachten. Geen enkele van die files include iets vanuit zijn eigen map, je gebruikt "./folder2/" vanuit folder 1 en toch gaat ie netjes naar "/folder2/" ipv dat ie probeert naar "/folder1/folder2" te gaan.
 
Ik heb je test wel even bekeken en ik zie nog steeds het idee niet. Zowel de basis include/require als de andere includes/requires worden netjes geinclude vanuit de base dir waar de test in begonnen is, zoals je zou verwachten. Geen enkele van die files include iets vanuit zijn eigen map, je gebruikt "./folder2/" vanuit folder 1 en toch gaat ie netjes naar "/folder2/" ipv dat ie probeert naar "/folder1/folder2" te gaan.

ik wil verder on topic blijven maar nog effen dat : als je toch overtuigt bent verander je alle include in require en merk je dat er toch iets scheef zal zitten en bijgevolg niet gelijk is.



Ik heb het niet getest, maar als dat zo is dan is de uitleg op de PHP-site wel erg beroerd:
core is core en tja ik merk ook dat het soms fout loopt in opensource maar de oud programmeurs weten waarom dit is was

je moet weten dat de libs die je toevoegd niet bepaald is waar deze staan en ook dat ze tenopzichte van elkaar verschuiven maar dan moet je ook iets van core kennen.Ik zag op eens site zelfs staan dat php van c komt wat echter ook niet waar is want er zit nog één taal tussen.Zo zie je niet alles op internet klopt.

en ik ben ook niet altijd juist merkte ik al eens
 
Laatst bewerkt:
Nee hoor, als ik ze allemaal gelijk trek (alles require of alles include) veranderd er helemaal niks aan je test. Het werkt gewoon allemaal zoals het hoort.

Als er bij jou fouten af komen, zou ik toch eens kijken naar je PHP versie en instellingen, want die twee dingen horen echt hetzelfde te zijn op de afhandeling van ontbrekende files na.
 
mijn fout dus toch verandert intussen en ook geen fout meer bij error_reporting(E_ALL);
maar ik ik heb hem toch kunnen fouten laten maken maar dan door test4.inc onder de root te plaatsen maar dat is dan wel extreem hem dwingen in de fout te laten gaan. Maar wanneer het verandert is weet ik dan ook niet.
 
oke ik heb er inmiddels een opmerking over gemaakt in een hoorcollege en toen verschoot ze wel even. Ja zij vond het ook beter maar ze gebruikte het alleen om te laten zien dat het kon. Terwijl ze in al haar voorbeelden de variablen binnen qoutes gebruikt en na die opmerking plots niet meer..:p
 
Zo zie je maar, ook leraren kunnen nog wat leren :P
 
oke ik heb er inmiddels een opmerking over gemaakt in een hoorcollege en toen verschoot ZE wel even. Ja ZIJ vond het ook beter maar ZE gebruikte het alleen om te laten zien dat het kon. Terwijl ZE in al haar voorbeelden de variablen binnen qoutes gebruikt en na die opmerking plots niet meer..:p

Verklaart een hoop :rolleyes:

Oh Erik, dat mag je niet zeggen :p
 
:mad: :eek:

Ik ben ook het enige meisje HBO Informatica, tweede jaars en dit soort dingen weet ik toch écht wel ;)
 
Haha, was een geintje. Zouden meer meiden wat met informatica moeten doen ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan