Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > массив и функция


Автор: Evgen24 4.3.2012, 22:14
Подскажите можно ли в функции воспользоваться массивом вот так:

Код


<?
$map = array ();
$map[0] = 0;

function showMapItem($mapItem)
{
    global $map;
    $item = $map[0];
    ....
} 





вот никак не могу я в функции свой внешний массив увидеть

Автор: Evghenusi 4.3.2012, 22:36
зДря, http://codepad.org/bwQ3SjMa

Автор: Evgen24 4.3.2012, 23:07
У меня не работает, приведу подробнее... $map[0] = 0; делаю чтобы уж точно выяснить где ошибка 

Код


$map = array ();

$query = "SELECT * FROM map";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
    
    for($i = 0; $i < ($maxMapX * $maxMapY - 1); $i++)
    {
        $line = mysql_fetch_assoc($result);
        $map[i] = $line["data"];
            
    } 

$map[0] = 0;

function showMapItem($mapItem)
{
    global $map;
    $item = $map[0];
    
    if ($item === 0)
        return $a='<img src="img/fon1.png">';
    else if ($item === 1)
        return $a='<img src="img/fon2.jpg">';
    .....    
} 

<body>

<div class="main">
<table align="center" cellspacing="0" cellpadding="0">
<tr>
    <th onClick = "InMap()">
     <?php echo showMapItem(0) ?>
    </th>
    ....


Автор: ksnk 4.3.2012, 23:50
Код


$GLOBALS['map']=&$map;



разные бывают поросята. 
Откуда берется сам php-файл? Как он подключается туда, откуда он вызвался?

Автор: Evgen24 5.3.2012, 00:16
тоже не сработало  smile 

в файл перехожу так из другого php

Код


print('<script>location.href="game.php?NickName='.$aNickName.'";</SCRIPT>');


Автор: ksnk 5.3.2012, 00:47
То есть, map определен в одном файле, в котором  сделан такой "переход". А использовать map нужно в том файле, куда перешли?

Автор: Evgen24 5.3.2012, 11:55
map определен в том же файле где и используется, до функции. Функция вызывается из <table>. Вроде бы должно все работать, я специально присвоил map[0]=0; чтобы отсечь ошибки в БД, но все равно значение неопределенно. 

Автор: Fortop 5.3.2012, 17:28
Цитата(Evgen24 @  4.3.2012,  22:14 Найти цитируемый пост)
Подскажите можно ли в функции воспользоваться массивом вот так:

За global надо бы руки отрывать
Цитата(Evgen24 @  5.3.2012,  00:16 Найти цитируемый пост)
в файл перехожу так из другого php

Код

print('<script>location.href="game.php?NickName='.$aNickName.'";</SCRIPT>');


Вы уверены что именно так переходите? smile

Ну и код вобщем-то рабочий, а вот как вы его используете это вопрос....



Автор: Evgen24 5.3.2012, 17:47
а что в global такого плохого?

Автор: Fortop 5.3.2012, 19:01
Цитата(Evgen24 @  5.3.2012,  17:47 Найти цитируемый пост)
а что в global такого плохого?

http://habrahabr.ru/blogs/php/132299/
http://wmdn.ru/php/using-globals-in-php/
http://anton.shevchuk.name/php/facing-refucktoring/

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)