Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: &-merkki funktion edessä

joekool [30.04.2005 03:45:48]

#

<?php
function &jokuFunktio() { ...
?>

Mitä merkitystä tuolla &-merkillä on funktion nimen edessä?

leftover [30.04.2005 09:45:36]

#

https://www.php.net/manual/en/language.references.php osaa kertoa n^2 kertaa paremmin jos osaat yhtään lontoota, mutta periaate on, että sen sijaan että funktio loisi muuttujasta kopion, käpisteleekin se sille alkuperäisiä kopioita. En hirveästi ole tutustunut referenssiviittauksiin, mutta käsittääkseni se olisi jotakuinkin seuraava:

<?php

function lisäämaija($taulukko) {

    $taulukko[] = "Maija";

    return $taulukko;

}

function lisääesko(&$taulukko);

    $taulukko[] = "Esko";

}

$tiedot[] = "Matti";

$tiedot = lisäämaija($tiedot);

// $tiedot sisältää [0] => "Matti", [1] => "Maija";

lisääesko($tiedot);

// $tiedot sisältää [0] => "Matti", [1] = "Maija", [2] => "Esko"

?>

joekool [30.04.2005 10:36:53]

#

Kysymykseni koski funktion edessä olevaa &-merkkiä.

Kiitos kuitenkin tiedosta, tuokin oli uutta.

leftover [30.04.2005 10:40:20]

#

Kun lisäät referenssiviittauksen funktion eteen, kaikki funktiolle syötetyt muuttujat ovat alkuperäisviittauksia. eli function &lisäämaija() olisi ihan yhtä tyhjän kanssa, mutta function &lisäämaija($taulukko, $toinenmuuttuja, $luku) tekisi kaikista kolmesta muuttujasta alkuperäisviittauksia... käsittääkseni.

Vastaus

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

Tietoa sivustosta