phpbar.de logo

Mailinglisten-Archive

[php] sprintf() und variable anzahl parameter

[php] sprintf() und variable anzahl parameter

markus espenhain metwo at gmx.net
Don Jun 24 14:57:33 CEST 2004


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)

hi

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 :)

markus

php::bar PHP Wiki   -   Listenarchive