"" rond variabelen in functies
http://www.phphulp.nl/php/scripts/1/69/
kan iemand me eens uitleggen waarom er bij $imagehw = GetImageSize("$file");
de variabele $file quotes staan?? Het script werkt maar ik snap niet dat het kan werken.
Zo geef je toch een string door met "$file" erin.
mvg
Danny
zie kan iemand me eens uitleggen waarom er bij $imagehw = GetImageSize("$file");
de variabele $file quotes staan?? Het script werkt maar ik snap niet dat het kan werken.
Zo geef je toch een string door met "$file" erin.
mvg
Danny
officieel moet een string waar karakters in zitten omgeven worden door " ".. Met nummers en vars hoeft dat niet.. PHP pikt het wel, alleen is het niet juist.. Dus dat kan je weghalen :)
Waarschijnlijk als je erboven zet
dat je er wel een error voor krijgt..
het is denk ik een sclordigeheidsfout dat het tussen quotes staat :)
thkz
Danny
-ontopic-
Om ook nog maar iets nuttigs toe te voegen. Als je om de variabele enkele quotes zet ( '$var' ) wordt letterlijk $var geprint. Als je dubbele quotes gebruikt ( "$var" ) wordt voor de zekerheid gecontroleerd of er toch nog variabelen binnen die quotes staan. "$var" levert print dus de inhoud van $var en niet $var zelf (hm..logische zin :P).
Daarom is het gebruik van enkele quotes ook sneller dan dat je dubbele quotes gebruikt. Maar in de praktijk zul je wel erg grote scripts moeten hebben om dat verschil te merken. Het is er wel :)
Maar toch blijft het zo dat variabelen officieel buiten quotes horen, ook al slikt PHP het als ze er binnen staan.
Code (php)
Gewijzigd op 30/12/2004 19:29:00 door dutchcamel
bv:
Code (php)
1
2
3
4
2
3
4
<?
$sql = "SELECT * FROM iets WHERE id='".$_POST['id']."'";
$query = mysql_query($sql);
?>
$sql = "SELECT * FROM iets WHERE id='".$_POST['id']."'";
$query = mysql_query($sql);
?>
ff als voorbeeld, komt het allemaal in voor :P
Maar voor queries gebruik ik zelf ook altijd " ipv ', omdat in de query zelf een ' voor kan komen en je die dan weer moet escapen. Voor hele HTML regels met veel "-en erin is het dan weer handiger om ' te gebruiken zodat je niet over \" hoeft te typen.
Het is misschien niet beter... maar je begrijpt wat ik bedoel. Vaak is het netter (minder escapes) en sneller (hoewel dat nauwelijks te merken is). Maar er zijn momenten dat ik zelf ook " gebruik, zoals bij queries.
Voor ik het vergeet, als je \n \r of \t gebruikt moet je " gebruiken, die werken binnen ' namelijk niet :)
Eens met camel :)
*mijn mening...*:)