Mailinglisten-Archive |
markus espenhain schrieb:
> Sebastian Mendel schrieb:
>
>> markus espenhain schrieb:
>>
>>> moin
>>>
>>> ich gruebel jetzt schon die ganze zeit aber mir will nix einfallen
>>> (is vielleicht auch schon bisschen spaet) - ich hab nen haufen
>>> queries fuer diverse views die mit sprintf() zusammengebaut werden -
>>> jetzt soll es eine update-page geben an die query-id und die
>>> jeweilige parameter uebergeben werden (hatte ich mir so gedacht) -
>>> also muss dieser vorgang des sql-zusammenbauens noch etwas
>>> abstrahiert werden - problem ist sprintf() - ich haette da pauschal
>>> an eval() gedacht aber mein verhaeltnis zu eval() ist etwas gestoert ...
>>>
>>> hat da vielleicht jemand einen kleinen denkanstoss fuer mich?
>>
>> ich versteh nix!
>>
>> ... aber wenn ich queries zusammenbauen muss nehm ich meißt implode()
>>
>> z.b.
>>
>> $sql = '
>> SELECT ' . implode(',', $collumns) . '
>> FROM `table`
>> WHERE ' . implode(' AND ', $wheres)
>
> es geht nur um ein simples ersetzen in der form
>
> $queries[123] = "select ... id = %1\$d ... where id = %1d";
> $queries[124] = "select ... x = %01.2f ... where id = %d and bla= %s";
> ...
> $sql = sprintf($queries[123], $id);
>
> das funktioniert bestens nur eben im beschriebenen fall wird's
> kompliziert - also wenn die querie-id beliebig sein soll und somit auch
> die parameter fuer sprintf() variieren
> fuer die implode-variante sind die queries zu komplex und das waere auch
> zu viel arbeit(unmoeglich) alles noch mal umzuschreiben - aber trotzdem
> danke :)
vsprintf() ?
--
Sebastian Mendel
www.sebastianmendel.de www.warzonez.de www.tekkno4u.de www.nofetish.com
www.sf.net/projects/phpdatetime www.sf.net/projects/phptimesheet
php::bar PHP Wiki - Listenarchive