[PHP] %varabelen%

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • g4wx3
  • Registratie: April 2007
  • Laatst online: 11-09 09:49
Ik zit met een stom vraagje:

Ik wil een folderpath omzetten naar dynamische HTML.
Dat gaat makkelijk, met array_walk, maar ik wilde het in 1 regel doen, om mijn kennis wat uit te breiden.
PHP:
1
$folderpathhtml = '<a href="#">' . implode('</a> &gt; <a href="#">', explode('/', $folderpath)) . '</a>';


Dat is de ene regel die ik geschreven heb.
Nu dacht ik dat je in PHP ook %variabele% op %deze% manier kon definieren, zodat dat je later pas de inhoud moet bepalden. Die techniek wou ik gebruiken om de href in te vullen, maar ik kom er niet uit, snap %dit% gedoe niet echt.

ik wil dus een variable zetten in bovenstaande regel code, die ik daarna pas toewijs in functie van zijn plaats. 1ste= dit , 2de=dat

Kan iemand me helpen, of moet ik toch een loop gebruiken?

http://www.softfocus.be/


Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

Voordat ik inga op je vraag: waarom zou je dit willen? Zelfs als het kan, en zelfs als het korter is, levert het zo'n slechte (slecht leesbare) code op, dat het niet iets is wat je zou moeten willen. Gebruik in godsnaam array_walk als je daar leesbaardere code door krijgt. ;)

'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.


Acties:
  • 0 Henk 'm!

  • user109731
  • Registratie: Maart 2004
  • Niet online
Met -NMe-, doe gewoon wat het beste leesbaar is. Wel zo handig voor het geval iemand anders (of jijzelf over een paar jaar) ermee verder gaat...

Maar volgens mij bedoel je sprintf:
PHP:
1
2
3
$int = 10; 
$str = 'qwerty';
$result = sprintf('int: %d, string: %s', $int, $str);

Ik ben fan van sprintf en printf. Het is zoveel beter leesbaar dan zelf strings/sql concatten :)

Acties:
  • 0 Henk 'm!

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 09-09 13:58

NMe

Quia Ego Sic Dico.

sprintf maakt het probleem niet kleiner. Het probleem is dat hij de verschillende elementen in de array één voor één aan wil halen en in zijn string afdrukken. Dat kan niet zonder loopstructuur/functie voor zover ik weet, en áls het dan wel kan, dan zou het onleesbaar en dus onwenselijk zijn. :)

'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.


Acties:
  • 0 Henk 'm!

  • g4wx3
  • Registratie: April 2007
  • Laatst online: 11-09 09:49
hmmm,
ik wilde mijn kennis van php uitbreiden met enkele %var%, maar ik heb ondertussen wel het probleem als volgt opgelost

PHP:
1
2
3
4
5
6
7
8
9
$folderpatharray = explode('/', $folderpath);
$folderpathhtml = '';
$valuesum = '';
foreach ( $folderpatharray as $value )
    {
    $valuesum .= $value . '/';
    $folderpathhtml .= '<a href="' . setUrlVariables('folderpath', $valuesum) . '">' . $value . '</a>';
    $folderpathhtml .= ' &gt; ';
    }


Echter ik wou het anders doen, omdat ik dacht dat uit principe om zoveel mogleijk loops te vermijden.

Dit zal ook niet ideale code zijn volgens mij, maar ik moet en wil dan ook nog veel bijleren

[ Voor 33% gewijzigd door g4wx3 op 05-10-2007 13:54 ]

http://www.softfocus.be/