Se connecter avec
S'enregistrer | Connectez-vous

Php array dimension variablr

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

En PHP les tableaux de base sont dynamique par défaut.
  1. $array = array();
  2. $array[] = 5;
  3. $array[] = 2;
  4. $array[] = 'toto';
  5. $array[] = null;
  6. $array[] = 5000;
  7. $array['foo'] = 'bar';
  8. $array[15] = 'truc';
  9. $array[] = 5;
  10.  
  11. var_dump($array);


http://php.net/manual/fr/language.types.array.php

Si as un moment tu veux des tableaux d'une taille prédéfinie, tu peux te tourner vers la SPL:
http://be.php.net/manual/fr/class.splfixedarray.php


ps: je te comprends, moi aussi quand je suis passé sur php j'ai eu du mal avec la "simplification à l'extrême" du language ^^

Calak a dit :
En PHP les tableaux de base sont dynamique par défaut.
  1. $array = array();
  2. $array[] = 5;
  3. $array[] = 2;
  4. $array[] = 'toto';
  5. $array[] = null;
  6. $array[] = 5000;
  7. $array['foo'] = 'bar';
  8. $array[15] = 'truc';
  9. $array[] = 5;
  10.  
  11. var_dump($array);


http://php.net/manual/fr/language.types.array.php

Si as un moment tu veux des tableaux d'une taille prédéfinie, tu peux te tourner vers la SPL:
http://be.php.net/manual/fr/class.splfixedarray.php


ps: je te comprends, moi aussi quand je suis passé sur php j'ai eu du mal avec la "simplification à l'extrême" du language ^^


bonjour Calak,

merci de votre réponse, je connaissais cette façon de faire

ce sont plutôt des tableaux multi dimension

pour faire des comptages des agents selon divers critères, services, sexe, langue, nationalité ........avec un maximum de 15 paramètres qui peuvent pour certains compter plusieurs centaines de valeurs
$array[service][sexe][langue].....[param 15]

je suis arrivé à le créer grace à mysql fetch_array

le problème qui me reste à résoudre parcourir cet array pour les totalisations et ''affichage du tableau résultat

si vous voulez voir le type de tableaux à faire, regarder sur le site www.pdata.be

Le plus simple et le plus propre, bref, le mieux serait pluttôt de programmer une classe "agent"

[code]<?php
class Agent {
public $service;
public $sexe;
public $langue;
...
...
...
}
Enfin, en gros, passer par un modèle objet. Ce serait beaucoup plus souple ;) 
Mais essaye d'expliquer un peu plus l'utilisation ;) 

Calak a dit :
Le plus simple et le plus propre, bref, le mieux serait pluttôt de programmer une classe "agent"

[code]<?php
class Agent {
public $service;
public $sexe;
public $langue;
...
...
...
}
Enfin, en gros, passer par un modèle objet. Ce serait beaucoup plus souple ;) 
Mais essaye d'expliquer un peu plus l'utilisation ;) 


voici un exemple
à une certaine date
connaître par organisme
le nombre d hommes et de femmes , selon le niveau d étude ( et on peut choisir jusqu'à 15 critères différents sur 70 disponibles)
le resultat de la recherche dans la base de données mysql est un array du type
$arr[service][sexe][niveau][nombre agents]

$arr[hr][homme][univ] [102]
$arr[hr]femme][sup][45]
.
.
.
$arr[dir][femme][sup][5]


la présentation du résultat


.........................................................................................................
.organisme . homme . femme . tot hom . tot fem . tot agent
.........................................................................................................
. .univ . sup . univ . sup . . . .
..........................................................................................................
. hr .102 . 0 . 0 . 45 . 102 .45 . 147 .
.dir . 0 . 0 . 0 . 5 . 0 5 . 5 .
...........................................................................................................
total . 102. 0 . 0 . 50 . 102. 50 . 152

--------------------------------------------------------------------------------

Calak a dit :
Le plus simple et le plus propre, bref, le mieux serait pluttôt de programmer une classe "agent"

[code]<?php
class Agent {
public $service;
public $sexe;
public $langue;
...
...
...
}
Enfin, en gros, passer par un modèle objet. Ce serait beaucoup plus souple ;) 
Mais essaye d'expliquer un peu plus l'utilisation ;) 


voici un exemple
à une certaine date
connaître par organisme
le nombre d hommes et de femmes , selon le niveau d étude ( et on peut choisir jusqu'à 15 critères différents sur 70 disponibles)
le resultat de la recherche dans la base de données mysql est un array du type
$arr[service][sexe][niveau][nombre agents]

$arr[hr][homme][univ] [102]
$arr[hr]femme][sup][45]
.
.
.
$arr[dir][femme][sup][5]


la présentation du résultat


.........................................................................................................
.organisme . homme . femme . tot hom . tot fem . tot agent
.........................................................................................................
. .univ . sup . univ . sup . . . .
..........................................................................................................
. hr .102 . 0 . 0 . 45 . 102 .45 . 147 .
.dir . 0 . 0 . 0 . 5 . 0 5 . 5 .
...........................................................................................................
total . 102. 0 . 0 . 50 . 102. 50 . 152

--------------------------------------------------------------------------------
Expert Programmation

Je ne comprend pas tout, mais ça :
Citation :
le resultat de la recherche dans la base de données mysql est un array du type
$arr[service][sexe][niveau][nombre agents]


Me fait immédiatement penser que soit ta base de donnée est mal foutue, soit c'est ta requête qui l'est.
Lassé par la pub ? Créez un compte