Alsof dat ook maar iets uitmaakt, het feit dat je gewoon variabelen tussen tekst door kan typen is toch geweldig handig? Een beetje editor zorgt dan ook gelijk voor normale highlighting zodat het goed opvalt..quote:Op dinsdag 4 maart 2008 21:45 schreef Farenji het volgende:
Enkele quotes is sneller, omdat die niet geparsed hoeven te worden.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | function secureValue($value, $html){ if (!$html){ $value = strip_tags($value, '<b>,<a>,<i>,<u>,<img>'); }else{ $value = htmlnumericentities($value); } if (!$value){ $value = NULL; } switch (gettype($value)) { case 'boolean': return $value ? '1' : '0'; case 'integer': case 'double': return (string)$value; case 'string': return "'".addslashes($value)."'"; case 'array': case 'object': return "'".addslashes($value)."'"; default: //'resource', 'NULL', 'unknown type' return 'NULL'; die(); } } ?> |
Ja dat is wel handig, maar ik zelf zou het niet doen als ik een document met veel html zou hebben...quote:Op dinsdag 4 maart 2008 22:32 schreef Thomass het volgende:
[..]
Alsof dat ook maar iets uitmaakt, het feit dat je gewoon variabelen tussen tekst door kan typen is toch geweldig handig? Een beetje editor zorgt dan ook gelijk voor normale highlighting zodat het goed opvalt..
Voor het codevoorbeeld dat je geeft zijn nou precies de dubbele quotes bedoeld.quote:Op dinsdag 4 maart 2008 21:42 schreef Likkende_Lassie het volgende:
Maar zit er nog verschil in een enkele of een dubble quote, behalve dan dat je direct een $string dr in kan zetten? Dat los ik gewoon op door bv.. echo 'blablabla '.$string.' blablabla';
Dat maakt iets uit ja. En daarnaast is het gewoon netter. Ieder bedrijf wat ik ken heeft in hun coding standard opgenomen hoe je enkele en dubbele quotes moet gebruiken, en da's dus altijd enkele quotes tenzij er een variabele (e.d.) in moet die geparsed moet worden.quote:Op dinsdag 4 maart 2008 22:32 schreef Thomass het volgende:
Alsof dat ook maar iets uitmaakt, het feit dat je gewoon variabelen tussen tekst door kan typen is toch geweldig handig? Een beetje editor zorgt dan ook gelijk voor normale highlighting zodat het goed opvalt..
Voor een SQL query kan ik "mysql_real_escape_string" aanraden.quote:Op dinsdag 4 maart 2008 22:33 schreef Likkende_Lassie het volgende:
ok direct een stuk veiliger dus.. ?
Dit is trouwens hoe ik al mn querys check, veilig volgens jullie?
[ code verwijderd ]
1 2 3 | echo "In my opinion, red = $color['Blue']"; ?> |
1 2 3 | echo "In my opinion, red = $color["Blue"]"; ?> |
Doe mij maar:quote:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\xampplite\htdocs\test.php on line 5
1 2 3 | printf('In my opinion, red = %s', $list['Blue'] ); ?> |
Ik reageerde op:quote:Op dinsdag 4 maart 2008 23:04 schreef Likkende_Lassie het volgende:
line 5 ?
Doe mij maar:
[ code verwijderd ]
quote:Op dinsdag 4 maart 2008 22:32 schreef Thomass het volgende:
[..]
Alsof dat ook maar iets uitmaakt, het feit dat je gewoon variabelen tussen tekst door kan typen is toch geweldig handig? Een beetje editor zorgt dan ook gelijk voor normale highlighting zodat het goed opvalt..
En wat als je je systeem ooit multilingual wilt maken?quote:Op dinsdag 4 maart 2008 23:15 schreef CraZaay het volgende:
Doe het maar gewoon hoe het hoort:
[ code verwijderd ]
Het typt ook sneller, omdat je geen Shift nodig hebtquote:Op dinsdag 4 maart 2008 21:45 schreef Farenji het volgende:
Enkele quotes is sneller, omdat die niet geparsed hoeven te worden.
Dan moet je voordat je gaat bouwen eens goed nadenken en alleen sprintf() gebruiken waar het nodig is. Ik doelde hier vooral op het gebruik van single en double quotes en de error die jij kreeg, omdat je geen gebruik maakte van {}.quote:Op dinsdag 4 maart 2008 23:19 schreef Geqxon het volgende:
En wat als je je systeem ooit multilingual wilt maken?
HTML hoort überhaupt niet in een PHP string thuis, daar heb je templates voor. Hoe je de veriabelen voor in de templates vult bijvoorbeeld, daar ging het om. Daarnaast is het te pas en te onpas gebruiken van sprintf() nou ook niet direct efficiënter om te parsen dan een simpele string afaik.quote:Op woensdag 5 maart 2008 00:05 schreef Geqxon het volgende:
Ieder zo zijn ding. Ik zweer bij printf's en sprintf's. Heerlijk dat ik HTML structuur en data gescheiden kan houden, en ook dat ik geen redundantie heb als ik met placeholders werk. Heeft er mogelijk ook mee te maken dat ik veel in C zit de laatste tijd.
Voor een SQL query kan ik "PDO" aanraden.quote:Op dinsdag 4 maart 2008 22:56 schreef Geqxon het volgende:
[..]
Voor een SQL query kan ik "mysql_real_escape_string" aanraden.
Ik zou hem nooit gebruiken als ik jou was. Kijk eens goed naar wat eringaat en eruitkomt. Dat is compleet inconsequent: een 0 of de string "0" geeft NULL, een boolean false ook maar een boolean true geeft "1". Dat gaat geheid problemen opleveren; meestal is een 0 gewoon 0 en wil je absoluut niet dat die als NULL de database ingaat.quote:Op woensdag 5 maart 2008 20:50 schreef Likkende_Lassie het volgende:
ziet dr goed uit, het gebruik hiervan maakt t in 1 keer helemaal veilig ?
Wat vind je verder van mijn bovenstaande functie ?
Er zijn genoeg redenen om een NULL in je db te stoppen, maar NULL is heel wat anders dan 0 of "0".quote:Op woensdag 5 maart 2008 21:45 schreef CraZaay het volgende:
Waarom zou je nooit een NULL value in je database willen stoppen (even los van deze functie)?
Dohquote:Op woensdag 5 maart 2008 22:27 schreef Farenji het volgende:
[..]
Er zijn genoeg redenen om een NULL in je db te stoppen, maar NULL is heel wat anders dan 0 of "0".
Je kunt het doen als:quote:Op donderdag 6 maart 2008 00:23 schreef Likkende_Lassie het volgende:
Hee om nog even terug te komen op de functie printf, wat als je nou 2 keer een waarde wilt herhalen, hoe doe je dat? Moet je dan een nieuwe printf starten?
1 2 3 4 | sprintf('Waarde uno: %s Waarde dos: %s', $uno, $dos); sprintf('Waarde uno: %s nogmaals uno: %s', $uno, $uno); ?> |
1 2 3 4 5 | $format = 'The %2$s contains %1$d monkeys. That\'s a nice %2$s full of %1$d monkeys.'; printf($format, $num, $location); ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |