Toon posts:

Globale array in php

Pagina: 1
Acties:

Verwijderd

Topicstarter
Probleempje:
Ik krijg mijn 2-dimensionale array niet aan de praat in mijn functies met global. Weet een van jullie een oplossing?
Het gaat om een volgend concept:
$afstand = array();
$standaardRoute = array();
for ($i=0; $i<$idNum; $i++) {
array_push ($standaardRoute, $i);
for ($j=1; $j<$idNum; $j++) {
$afstand[$i][$j] = calculatedist($a, $b, $c, $d);
}
}
afstand[][] wil ik ook in functies gebruiken, maar krijg het niet voor elkaar :'(

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

functie blaat()
{
global $afstand;

}

<edit>
code:
1
global==vies

Doet iets met Cloud (MS/IBM)


  • Nielsz
  • Registratie: Maart 2001
  • Niet online
D2k >> Pfffff jij gebruikt ze nog meer als ik ;) :P


je kan dus ook

$de_array[1]="blaat";
blaat($de_array);



function blaat($array)
{
echo $array[1];
}

  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

Op dinsdag 13 november 2001 15:56 schreef D2k het volgende:
code:
1
global==vies
Waarom is een global nou weer vies?
Alle Apache server variablen zijn ook global, zijn die ook vies?

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

een global duidt meestal op slechte code (eromheen)

Normaal gesproken geef je de benodigde variabelen mee aan de functie, ipv deze binnen de functie aan te roepen.

Klaar voor een nieuwe uitdaging.


  • Tim
  • Registratie: Mei 2000
  • Laatst online: 23-07 15:18

Tim

Op dinsdag 13 november 2001 18:06 schreef chem het volgende:
een global duidt meestal op slechte code (eromheen)

Normaal gesproken geef je de benodigde variabelen mee aan de functie, ipv deze binnen de functie aan te roepen.
Stel, ik maak een script om een directory tree te maken, de directory die word opgegeven word nog flink aangepast zodat mensen geen .. kunnen gebruiken ed..

Als ik dit dus lees zou ik elke functie die die naam nodig heeft moeten beginnen met function bla($dir, ... ?
Dit lijkt me slechtere code dan gewoon $dir global maken

Verwijderd

hoho Chem neem dat van global terug...
als je een functie hebt zoals dit
PHP:
1
2
3
4
5
6
7
8
9
<?
//Uit dadabase:
$str1 = '$strnaam';
$str2 = 'echo blaat($strnaam)';

//Cote
global $$str1;
eval($str2);
?>

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op dinsdag 13 november 2001 19:22 schreef GDOG het volgende:
hoho Chem neem dat van global terug...
als je een functie hebt zoals dit
PHP:
1
2
3
4
5
6
7
8
9
<?
//Uit dadabase:
$str1 = '$strnaam';
$str2 = 'echo blaat($strnaam)';

//Cote
global $$str1;
eval($str2);
?>
Over het algemeen is code door eval() halen ook vies :P

Tuurlijk soms kan het niet echt anders, maar dat maakt het niet mooier.

Trouwens, kan die code echt niet zonder global?

Volgens mij werkt het namelijk gewoon.
Pagina: 1