Commande array

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Commande array

Re: Commande array

par Dr@ke » 05 mars 2010, 16:36

Oui c'est un des buts principal de la fonction serialize(), je crois :wink:

Re: Commande array

par gui » 05 mars 2010, 16:30

En fait c'était une erreur de frappe.
L'utilisation de fopen suivit de fread permet bien l'unserialize

Re: Commande array

par gui » 05 mars 2010, 15:08

Je comprend ton raisonnement seulement mon fichier est un tableau très délicat à manipuler ligne par ligne.
J'ai essayé après le "fopen" de faire un "fread", il me revoie une erreur peu explicite : Resource id #6
Quelqu'un saurait-il se que cela signifie.

Re: Commande array

par Yosh » 05 mars 2010, 14:19

Il te faut récupérer la ligne inscrite dans le fichier, la tu essaye de délinéariser le pointer de fichier.

Regarde du côté de file_get_contents qui renverra directement le contenu du fichier.

Re: Commande array

par gui » 05 mars 2010, 12:40

Alors avec la fonction array j'ai crée un tableau dans lequel j'ai placé toutes mes valeurs. Pour récupérer ce tableau de valeur sur un autre script je l'ai sauvegarder sur un fichier texte avec la commande $s = serialize($arr);
A présent je souhaite ouvrir ce fichier contenant mon tableau linéarisé et le remettre sous sa forme d'origine (un tableau).
J'ouvre donc mon fichier via un fopen:

$f = fopen("C:\...\sequence1.fasta", 'r') or die("can't open file for Msa export in FASTA");

Et je prend ma variable linéarisé que je "délinéarise" avec la fonction $arg = unserialize($f);
Cette fonction doit prendre en argument une fonction linéarisé pourtant cela ne fonctionne pas et me renvoie une erreur du type:

Warning: unserialize() expects parameter 1 to be string, resource given in C:\Program Files\EasyPHP-5.3.1\www\selection.php on line 63
Voilà si quelqu'un peut m'aider à résoudre ce problème
Merci d'avance

Re: Commande array

par gui » 05 mars 2010, 11:20

Oui en effet cela fonctionne, j'ai aussi trouver un moyen de sauvegarder les tableaux dans des fichiers textes avec la commande "serialize($arr)" qui va linéariser le tableau et le délinéariser avec unserialize($var).
Merci pour tout.

Re: Commande array

par Mercantos » 05 mars 2010, 11:02

Bonjour,

Si $arr est un tableau, tu ne peux pas faire un écho (sinon ça affiche Array comme tu as pu le constater).

Si tu veux afficher le contenu du tableau (j'imagine que c'est pour du débug) tu peux utiliser la fonction print_r() ou la fonction var_dump(). La première affichera le contenu du tableau, la seconde te donnera en plus des informations sur le type des données.

Commande array

par gui » 05 mars 2010, 10:40

Bonjour à tous,
Je souhaite vous poser quelques questions sur la commande "array" qui s'avère être bien pratique et pourrai bien résoudre un de mes problèmes.
Alors je souhaite définir un tableau dans une boucle "For" et remplir le tableau au fur et à mesure des passage dans ma boucle For.

Cela donnerai alors :
for($a=0;$a<strlen($sequence)-$this->b-1;$a++){    
                    
			$this->file=substr($sequence,$a,$this->b);

			#$this->resultat($this->file);                
       
			#echo $this->file."<br/>";

			$arr=array("$this->file"=>"$a");

			echo $arr;

                      }

Problème, je ne pense pas que cela soit possible sous cette forme, à mon echo mon script renvoie une ligne avec des "Array" qui se suivent.
J'ai une autre question, peut-on enregistrer un tableau dans un fichier texte et le récupérer dans un autre script.
Merci beaucoup d'avance
guillaume