'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
hij moet gewoon alles tussen die quotes als string zien, niet als code-NMe- schreef op woensdag 26 januari 2005 @ 22:38:
Misschien is het handig om even een check uit te voeren om te kijken of <?php zich niet in een string bevindt?
Dat sowieso, maar ik denk dat dit een beetje een geval apart is, omdat er gekeken wordt in de code of er <?php in voorkomt of niet. Zie onderstaande:Erkens schreef op donderdag 27 januari 2005 @ 10:56:
hij moet gewoon alles tussen die quotes als string zien, niet als code
1
| echo "Dit alternatief is zonder PHP-tag"; |
1
2
3
| <?php echo "Dit alternatief is met PHP-tag"; ?> |
Omdat hierop door de highlighter gecontroleerd wordt, kan het probleem iets moeilijker liggen dan alles wat tussen quotes staan als string aanmerken, al is dat natuurlijk wel waar je naartoe wil.
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
Maar wat Erkens zegt is gewoon de algemene oplossing, alles na ' of " is string, totdat je dezelfde type 'of " zonder escape ziet. Binnen een string parse je geen andere dingen.
[ Voor 9% gewijzigd door Voutloos op 27-01-2005 14:44 ]
{signature}
wat hij bedoeld (en waar het ook fout gaat waarschijnlijk) is dat zodra jeVoutloos schreef op donderdag 27 januari 2005 @ 14:43:
Ik snap je laatste voorbeeld niet?
1
2
3
| <?php echo "blaat"; ?> |
gebruikt in een php-tag dan zet de "parser" er niet automagisch <? en ?> omheen
1
2
3
| <?php echo "blaat"; ?> |
zie het verschil:
1
| echo "blaat"; |
1
| echo "blaat"; |
/offtopic
Ja, uiteraard gaat hij daarop fout. Dit is gewoon 1 van de dingen die hij niet moet parsen in een string.
[ Voor 29% gewijzigd door Voutloos op 27-01-2005 14:59 ]
{signature}
klopt, maar waarschijnlijk gaat hij daarop fout, hij ziet"<?php" en zet dus de parser aan ofzo, althans dat denk ikVoutloos schreef op donderdag 27 januari 2005 @ 14:52:
Ok, maar het lijkt me dat dat het gewenste gedrag is voor de parser?Als je gewoon geen andere dingen parst binnen een string is het ook niet relevant voor dit probleem.
1
2
3
4
5
6
7
8
| <?php $title = 'blaat'; ?> <html> <head> <title><?php echo $title; ?></title> |
[ Voor 5% gewijzigd door crisp op 27-01-2005 15:32 ]
Intentionally left blank
1
| $content = "<?php include($_SERVER['DOCUMENT_ROOT'] . '/nabestelservice/includes/index.php'); ?>"; |
1
2
3
| <?php $content = "<?php include($_SERVER['DOCUMENT_ROOT'] . '/nabestelservice/includes/index.php'); ?>"; ?> |
als je niet expliciet zelf de PHP open en sluittags opneemt weet de parser niet in welke context hij de code moet interpreteren. Beide interpretaties kunnen namelijk goed zijn
Intentionally left blank
natuurlijk ja, je kan immers ook in een html file de tekst $content="blaat" willen hebben waarbij de "blaat" door een stukje PHP wordt neergezet, niet aan gedachtcrisp schreef op donderdag 27 januari 2005 @ 15:45:
ergo:
PHP:
1 $content = "<?php include($_SERVER['DOCUMENT_ROOT'] . '/nabestelservice/includes/index.php'); ?>";
PHP:
1 2 3 <?php $content = "<?php include($_SERVER['DOCUMENT_ROOT'] . '/nabestelservice/includes/index.php'); ?>"; ?>
als je niet expliciet zelf de PHP open en sluittags opneemt weet de parser niet in welke context hij de code moet interpreteren. Beide interpretaties kunnen namelijk goed zijn
Mjah, inderdaad, dat was me ook even ontglipt. Naja, dan moet iedereen maar braaf zelf de PHP-tags openen.Erkens schreef op donderdag 27 januari 2005 @ 15:49:
natuurlijk ja, je kan immers ook in een html file de tekst $content="blaat" willen hebben waarbij de "blaat" door een stukje PHP wordt neergezet, niet aan gedacht
'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.
- als er geen PHP open en sluittag voorkomt in de code wordt de hele code als PHP gezien
- als er wel een open en sluittag voorkomt dan wordt pas vanaf de eerste opentag de code als PHP gezien
Intentionally left blank
Dit topic is gesloten.
![]()