Вопрос

$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