質問

$attacks_list = array();

function f1()
{     
    $sql = "SELECT * FROM user_pokemon_db WHERE user_id = '".$id."' AND pkmn_id = '".$pkmn_id."' " or die(mysql_error());
    $res = mysql_query($sql);
    $$attacks_list = mysql_result($res,0,"attacks");
    $attacks_list = unserialize($attacks_list);
    print_r($attacks_list);
 }    

I have already declared the array globally..!But still its not able to identify it! Is there any other way to declare it globally?

役に立ちましたか?

解決

If you wish to use a global within a function, you must declare it to be global at function level too, e.g.

$attacks_list = array();

function f1()
{     
    global $attacks_list; // <-- ADDED
    $sql = "SELECT * FROM user_pokemon_db WHERE user_id = '".$id."' AND pkmn_id = '".$pkmn_id."' " or die(mysql_error());
    $res = mysql_query($sql);
    $$attacks_list = mysql_result($res,0,"attacks");
    $attacks_list = unserialize($attacks_list);
    print_r($attacks_list);
 }   

Have a look at the php.net article on variable scope for more information too: http://www.php.net/manual/en/language.variables.scope.php

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top