Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: PHP: Viittauksilla kikkailu

Sivun loppuun

litra [23.02.2005 14:35:41]

#

Elikkäs tälläinen todella yksinkertainen esimerkki viittauksien (pointterien) käytöstä php:ssa.

<?php
// metodi vaihtaa muuttujien arvot päittäin
function vaihda(&$arvo,&$arvo2) {
 $temp = $arvo;
 $arvo = $arvo2;
 $arvo2 = $temp;
}

?>
<?php
// hexa-stringeillä alustetut muuttujat
$testi1 = "#999999";
$testi2 = "#cccccc";

/* kymmenen lenkin looppi joka havainnollistaa taustavärien
vaihtumisen toistojen väleillä
*/
for ($i = 0; $i < 10; $i++) {
 //html-stringi
 echo "<p><span style='background-color:".$testi1."'>
 vaihtoväri</span><span style='background-color:".$testi2."'>
 värivaihto</span></p>";

 vaihda($testi1 ,$testi2);

}

?>

str4nd [24.02.2005 16:29:07]

#

jaha, tällanen vähän turhempi taas :-)

Linkku [24.02.2005 16:32:47]

#

Enpäs tiennytkään, että PHP:ssä on pointtereita.

ajv [24.02.2005 16:39:14]

#

Heh, eikös jokainen itseäänkunnioittava koodari vaihda kahden muuttujan arvon ilman kolmatta muuttujaa :P

<?php
function vaihda(&$arvo1,&$arvo2){
   $arvo1 ^= $arvo2;
   $arvo2 ^= $arvo1;
   $arvo1 ^= $arvo2;
}
?>

Linkku [24.02.2005 16:47:49]

#

lainaus:

Heh, eikös jokainen itseäänkunnioittava koodari vaihda kahden muuttujan arvon ilman kolmetta muuttujaa :P

Mietin ihan samaa, mutta eikö tuo toimi vain numeroilla?

zacura [24.02.2005 17:05:15]

#

lainaus:

Mietin ihan samaa, mutta eikö tuo toimi vain numeroilla?

Aivan ja tietokoneen mielestähän kaikki on numeroita. :D

T.M. [24.02.2005 17:35:54]

#

Kyllä tuo ajv:n funktio toimii stringeillä myös, mutta stringien täytyy olla yhtä pitkiä, muuten se katkaisee pidemmän stringin lyhyemmän pituiseksi.

akx [24.02.2005 17:48:30]

#

lainaus:

Aivan ja tietokoneen mielestähän kaikki on numeroita. :D

Joka ei suinkaan liity tähän.

litra [24.02.2005 18:22:28]

#

pointti on kuitenkin vain se että php(4)ssa voi käyttää pointtereita. esimerkki nyt ei ehkä ole paras mahdollinen.

tsuriga [24.02.2005 20:10:44]

#

Php:ssä on funktiot ja Javassa metodit. Lisäksi noihin koodibokseihin voisi laittaa <?php ?>, jotta teksti värjäytyisi.

litra [24.02.2005 21:32:29]

#

rakkaalla aliohjelmalla monta nimeä

phadej [25.02.2005 00:01:02]

#

ja swapille on turhaa tehdä omaa aliohjelmaa.
macro korkeintaan :) (ei taida sellaista php:ssa olla)

litra [25.02.2005 10:59:23]

#

lainaus:

ja swapille on turhaa tehdä omaa aliohjelmaa.
macro korkeintaan :) (ei taida sellaista php:ssa olla)

miten niin turhaa? entä jos tota swappia tarvitsee useassa eri kohdassa ja vielä eri luokassa? toi on siitä hyvä että se toimii millä muuttujilla tahansa.

tejeez [25.02.2005 20:00:00]

#

IHAN KIVA KOODIVINKKI

renni [26.02.2005 15:43:57]

#

Alkuperäisessä esimerkissä en näe pointtereita. Jos PHP:ssä on mahdollista käyttää pointtereita niin se on erittäin iso miinus sille, kunnollisissa kielissä moisia ei ole.

coaster [27.02.2005 13:10:03]

#

lainaus:

Jos PHP:ssä on mahdollista käyttää pointtereita niin se on erittäin iso miinus sille, kunnollisissa kielissä moisia ei ole.

Sanoo sellainen, joka ei tajua mitä pointterit oikeesti on.

Onko Java,C,C++ sitten huonoja kieliä, koska niissä on pointtereita?

Niin kyllä Javassakin on pointtereita. Ne vaan on vähän piilossa.

SysRq868 [27.02.2005 17:31:53]

#

...koodi toiminnassa missä?

renni [27.02.2005 18:35:16]

#

coaster: Käytin pointtereita ennen kuin sinä olit edes pilke isäsi silmäkulmassa. :) Joten ehkä tiedän mitä ne ovat. Ja ne ovat erittäin huono asia, piste. Jos muuta väittää on pelkkä aloittelija jonka mielestä niillä on kiva kikkailla. Nih.

Javassa ei ole pointtereita, yksi sen hyviä puolia. Tai sitten tarkoitat pointterilla jotain muuta kuin pointteria. C/C++:ssa pointtereita käytetään vahvasti ja se onkin noiden pahin ongelma. Aiheuttavat paljon hankalia bugeja vain.

Tämä keskustelu taitaa kohta mennä taas semantiikaksi ja pilkun viilailuksi...

EDIT: Tässä vielä linkki aiheesta.
http://mindprod.com/jgloss/pointer.html

ruuvari [01.03.2005 16:59:39]

#

kikkailkehhaan

Darwen [04.03.2005 22:25:39]

#

voiks php:llä tehdä ihan pelattavia pelejä

T.M. [05.03.2005 15:31:31]

#

Voi.


Sivun alkuun

Vastaus

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

Tietoa sivustosta