Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: koodin väritys

Sivun loppuun

cj [26.10.2004 17:12:40]

#

Olis tarkoitus tehä semmonen koodi systeemi kun täällä putkassa on. Ongelmana on, että miten saa koodin eri pätkät väritettyy eri väreillä?

makeuu [26.10.2004 17:17:07]

#

Siihen on oma funktio higlight_string().

T.M. [26.10.2004 17:24:28]

#

Vaikka tarkoitus oli hyvä, pysytään nyt kuitenkin niillä manuaalin sivuilla:
https://www.php.net/manual/en/function.highlight-string.php

makeuu [26.10.2004 17:30:04]

#

T.M. kirjoitti:

Vaikka tarkoitus oli hyvä, pysytään nyt kuitenkin niillä manuaalin sivuilla:
https://www.php.net/manual/en/function.highlight-string.php

Okei ;).. tietenkihän sieltä saa tarkemmat tiedot.

Antti Laaksonen [26.10.2004 19:51:07]

#

Mainittu funktio kelpaa tietenkin vain silloin, kun väritettävä koodi on PHP-kielinen. Muulloin pitää tehdä oma väritys. Itse olen havainnut parhaaksi väritystavaksi sen, että koodin merkit käydään läpi yksi kerrallaan. Jos merkkiin ei liity mitään erikoista, se vain lisätään palautettavaan merkkijonoon sellaisenaan. Mutta jos merkki vaikka aloittaa kommentin, merkkiä ennen lisätään HTML-tagi, jonka ansiosta väri muuttuu. Sitten kannattaa boolean-muuttujilla pitää kirjaa eri osuuksista, mm. kommenteista ja merkkijonoista, jotta väritys toimii oikein niidenkin sisällä.

Täydellinen selitys värityksen toteuttamisesta olisi vaikka kuinka pitkä, joten kysy toki lisää, jos jokin kohta ei valjennut...

cj [27.10.2004 14:47:13]

#

Joo kiitos :) Epäselväksi jäi vain se, että onko sitten php:eessä oma fonktio tai jokin millä voi käydä läpi merkin yksi kerrallaan?

Antti Laaksonen [27.10.2004 15:17:54]

#

Ei merkkien läpikäymiseen kaiketi ole mitään erillistä funktiota, mutta seuraavantapaisen for-silmukan avulla tämä ei ole temppu eikä mikään:

<?php

$teksti = "Tämä on esimerkki";

for ($i = 0; $i < strlen($teksti); $i++) {
    $merkki = $teksti[$i];
    $uusi .= $merkki;
}

echo $uusi;

?>

Tässä esimerkissä $teksti-merkkijonon merkit kopioidaan yksi kerrallaan $uusi-merkkijonoon. Kukin merkki on omalla vuorollaan $merkki-muuttujan arvona, ja suoraan kopioimisen sijasta väliin voi tietenkin laittaa HTML-tageja, jotka muuttavat väriä, paksuntavat tekstin jne.

cj [27.10.2004 17:50:33]

#

Kiitti (:


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta