Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

What value is printed for "a" below? | myphpquiz.com

[es] :: PHP :: PHP za početnike :: What value is printed for "a" below? | myphpquiz.com

[ Pregleda: 1976 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Miloš Bjelanović
Beograd

Član broj: 4237
Poruke: 178
147.91.246.*



+1 Profil

icon What value is printed for "a" below? | myphpquiz.com22.12.2011. u 16:42 - pre 149 meseci
What value is printed for "a" below
Code:

<?php

    $a = 1;

    function Test()
    {
        echo "a = $a";
    }
    Test();
?>


Odgovori:
1, 2, 3, no value.

Moj odgovor je 1, ali nije tačno, već je "no value". Zašto?
Knjiga, SLOBODA!
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com22.12.2011. u 17:22 - pre 149 meseci
Ako tebi lično nije jasno, a ne testiraš nikoga ovde, onda treba samo da staviš global $a; pre echo "a=$a"; ili da definišeš $a unutar same f'je.

Code (php):


  $a = 1;

    function Test()
    {
        global $a;
        echo "a = $a";
    }

    Test();

 


Code (php):


    function Test()
    {
        $a = 1;
        echo "a = $a";
    }

    Test();

 



Code (php):


  $a = 1;

    function Test($a)
    {
        echo "a = $a";
    }

    Test($a);

 

about:networking
 
Odgovor na temu

VladaSu

Član broj: 31634
Poruke: 1099
*.dynamic.isp.telekom.rs.



+218 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com22.12.2011. u 17:24 - pre 149 meseci
Code (php):

<?php

    $a = 1;

    function Test()
    {
        echo "a = $a";
    }
    Test();
?>
 

Zato sto varijable definisane izvan funkcije nisu vidljive u funkciji.

Ovo je moguce:
Code (php):

<?php

    function Test()
    {
        $a = 1;
        echo "a = $a";
    }
    Test();
?>
 


To mozes ovako resiti:
1. Prenos varijabli
Code (php):

<?php

    $a = 1;

    function Test($b) // moze i $a koji nije isti sa onim $a = 1 ali sam stavio $b da te ne buni
    {
        echo "a = $b";
    }
    Test($a);
?>
 


2. Koriscenjem global naredbe (nije preporucljivo)
Code (php):

<?php

    $a = 1;

    function Test()
    {
        global $a;
        echo "a = $a";
    }
    Test();
?>
 


[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
 
Odgovor na temu

Miloš Bjelanović
Beograd

Član broj: 4237
Poruke: 178
147.91.246.*



+1 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com23.12.2011. u 14:39 - pre 149 meseci
Sad mi je jasno - promjenljiva mora biti definisana unutar funkcije, ili povezana sa promjenljivom van funkcije preko riječi "global".

Hvala obojici.
Knjiga, SLOBODA!
 
Odgovor na temu

VladaSu

Član broj: 31634
Poruke: 1099
*.dynamic.isp.telekom.rs.



+218 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com23.12.2011. u 17:32 - pre 149 meseci
Gledaj da ne koristis global. To ti je najore moguce resenje.

[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2247 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com23.12.2011. u 19:04 - pre 149 meseci
@Miloš Bjelanović

Nema na čemu.

Što se tiče 'global' rešenja, ako je promenjiva prost integrer (kao u ovom primeru) i primenjue se u sasvim prostim funkcijama za statični sadržaj, gde nema formi, itd. onda možeš i global varijantu.
about:networking
 
Odgovor na temu

Milos911
Serbia

Član broj: 219127
Poruke: 1230
77.243.20.*



+303 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com23.12.2011. u 23:33 - pre 149 meseci
Citat:
Miloš Bjelanović: Sad mi je jasno - promjenljiva mora biti definisana unutar funkcije, ili povezana sa promjenljivom van funkcije preko riječi "global".
Hvala obojici.

Preskocio si i ovo resenje:
Code:
$a = 1;

     function Test($a)
     {
         echo "a = $a";
     }

     Test($a);

Takodje mozes da pises samo
Code:


     function Test($a)
     {
         echo "a = $a";
     }

     Test(1);

I ako hoces da samo vratis vrednost iz funkcije, mozes da koristis return $a;
 
Odgovor na temu

VladaSu

Član broj: 31634
Poruke: 1099
*.dynamic.isp.telekom.rs.



+218 Profil

icon Re: What value is printed for "a" below? | myphpquiz.com24.12.2011. u 00:58 - pre 149 meseci
A moze i:
Code (php):


     function Test($a = 5)
     {
         echo "a = $a";
     }

     $b = 3;
     Test();
     Test(2);
     Test($b);

 

[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]
 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: What value is printed for "a" below? | myphpquiz.com

[ Pregleda: 1976 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.