Accueil > Forum > > > > Probleme de reset sur un array ()
Probleme de reset sur un array ()
mardi 10 novembre 2009 à 16:15:54 |
Probleme de reset sur un array ()

agparchitecture
|
Bonjour à tous, je compte sur vos connaissances pour pouvoir m'éclairer.
Mon problème est le suivant:
Code PHP : <?php
$Accept_Lang=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
if (is_array($Accept_Lang)) {echo 'c est un tableau';} else {'n est pas un tableau';}
reset($Accept_Lang);
?>
Le réponse est :
c est un tableau avec une erreur sur la function reset.
Erreur: E_WARNING: reset() [function.reset]: Passed variable is not an array or object
Pourtant lors de ma vérification j'ai bien un tableau??????
J'ai également essayé :
Code PHP : <?php
reset ( explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']));
?>
Mais le problème est le même?
Avez-vous des explications?
|
|
mardi 10 novembre 2009 à 16:58:39 |
Re : Probleme de reset sur un array ()

kohntark
|
Salut,
Heu, je ne vois pas trop en quoi ça pourrait être source de bug, à part le
else {'n est pas un tableau';}
=> else {echo 'n est pas un tableau';}
Tu es sur qu'il n'y a pas un pb de majuscule etc ... qq part ?
Cordialement,
Kohntark -
|
|
mardi 10 novembre 2009 à 17:42:25 |
Re : Probleme de reset sur un array ()

agparchitecture
|
En fait le if else n'est que la pour vérifier que la variable $Accept_Lang est bien un tableau. Ce qui est le cas.
Pourtant la function reset me dit que ce n'est pas un tableau
Même en utilisant explode(',', $_SERVER['HTTP_ACCEPT_LANGUAGE']); qui retourne un tableau j'ai la même erreur.
Par contre si je passe un tableau array('12', 'jhg', 'sldi') La function reset ne "râle" pas????
Je comprend plus rien???
|
|
mardi 10 novembre 2009 à 20:27:20 |
Re : Probleme de reset sur un array ()

kohntark
|
En fait le if else n'est que la pour vérifier que la variable $Accept_Lang est bien un tableau.
J'avais bien compris, je te faisais remarquer qu'il n'y avait pas de "echo" dans le else.
Qu'est ce que ça raconte si tu fais un truc comme ça dans un nouveau fichier :
Code PHP :
<?php
$a = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
$b = explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
var_dump($a, $b).'<br />';
if (is_array($b)) echo 'un tableau<br />'; else echo 'pas un tableau<br />';
echo current($b).'<br />';
next($b);
echo current($b).'<br />';
reset($b);
echo current($b).'<br />';
?>
Kohntark -
|
|
mardi 10 novembre 2009 à 20:39:58 |
Re : Probleme de reset sur un array ()

agparchitecture
|
Qu'est ce que ça raconte si tu fais un truc comme ça dans un nouveau fichier :
Voici le resultat:
Code HTML : string(35) "fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3" array(4) { [0]=> string(2) "fr" [1]=> string(11) "fr-fr;q=0.8" [2]=> string(11) "en-us;q=0.5" [3]=> string(8) "en;q=0.3" } un tableau
fr
fr-fr;q=0.8
fr
Merci pour votre aide
|
|
mardi 10 novembre 2009 à 20:51:25 |
Re : Probleme de reset sur un array ()

agparchitecture
|
Chose bizarre:
Si je change ma variable $Accept_Lang par $AcceptLang Le reset fonctionne    Est-ce que ce serait possible que le _ dans le nom de la variable provoque un "Bug"?
|
|
mardi 10 novembre 2009 à 21:09:33 |
Re : Probleme de reset sur un array ()

kohntark
|
Est-ce que ce serait possible que le _ dans le nom de la variable provoque un "Bug"?
Non, à moins que $Accept_Lang soit un mot réservé, mais je ne crois pas.
Côté config non plus je ne vois pas.
En plus je viens de faire le test pour dire le moins de bêtise possible : ça marche sans pb chez moi
C'est particulièrement bizarre ton affaire.
Qu'est ce que ça dit en remplaçant $Accept_Lang par :
- $accept_lang
- $machin_bidule
Quelle est ta version de PHP ?
Sur quel serveur es tu ?
As tu la possibilité de tester sur un autre serveur ?
Cordialement,
Kohntark -
|
|
mardi 10 novembre 2009 à 21:12:54 |
Re : Probleme de reset sur un array ()

kohntark
|
Réponse acceptée !
Au fait, nous sommes bien d'accord, le code que je t'ai proposé ne génère pas d'erreur ?
Kohntark -
|
|
mardi 10 novembre 2009 à 21:52:41 |
Re : Probleme de reset sur un array ()

agparchitecture
|
Tu avais raison ton code ne genère aucune erreur mais je ne comprend pas le var dump ni son interet. Pas tout compris sur le site php?
j'utilise wamp en local avec apache 2.2.8 et php 5.2.6
Par contre j'ai quand même des erreurs dés que j'ai un _ dans le nom de la variable
Je le supprimérai 
|
|
mardi 10 novembre 2009 à 22:18:32 |
Re : Probleme de reset sur un array ()

kohntark
|
Réponse acceptée !
Un var_dump te permet d'afficher des informations sur une variable ou un objet.
En l'occurrence le but ici était de vérifier le type de $b (array) et de voir ses valeurs :
array(4) { [0]=> string(2) "fr" [1]=> string(11) "fr-fr;q=0.8" [2]=> string(11) "en-us;q=0.5" [3]=> string(8) "en;q=0.3" }
En décomposant :
array : c'est un tableau
(4) : de 4 éléments
[0]=> : le premier index
string : contient une chaîne de caractères
(2) : de 2 caractères
"fr" : dont la valeur est fr
etc ...
C'est très pratique pour le debug, en particulier quand ça se corse un peu (objets)
Vraiment étrange cette histoire de "_" Je ne me souviens pas avoir déjà rencontré un tel problème.
Un nouveau sujet mériterait d'être posté, mais avant ça :
Quel est l'éditeur avec lequel tu codes ?
As tu le même problème si tu crées un fichier sous notepad en collant le code ?
Sous quelle version de Windows tournes tu ?
Cordialement,
Kohntark -
|
|
Cette discussion est classée dans : problème, code, probleme, array, reset
Répondre à ce message
Sujets en rapport avec ce message
probleme include [ par mickael56100 ]
Bonjour a tous je rencontre un problème actuellement, en fait lorsque je teste une partie de mon code cela fonctionne mais apres l'avoir integrer a mo
Problème simple de tableau (enfin je pense) [ par wiz4rd ]
Bonjour, j'ai un soucis quand j'utilise la fonction [url=http://www.manuelphp.com/php/function.array-multisort.php]array_multisort()[/url]: Voici le
Calendrier avec date choisis + php [ par neurone84 ]
Bonjour, J'ai un probleme avec les dates (j'avoue ne jamais avoir fait) et aimerais votre avis. Je creer un tableau avec mon calendrier, a l'interie
Probleme formulaire et récupération des données [ par dasee ]
Bonjour, Je suis un débutant et j'aimerai créer un formulaire pour la newsletter de mon site, après de multiples recherche je suis arrivé a deux code:
Problème avec le code d'une gallerie photo [ par Matmat21 ]
Bonsoir , J'ai déjà posté un commentaire à la suite du code source proposé ici : [url=http://www.phpcs.com/codes/GALERIE-AUTOMATIQUE-SANS-BASE-DONNE
Besoin d'aide pour comprendre Array_walk [ par eltyty ]
Bonjour, j'ai vu dans google code la ligne suivante : [code=php] array_walk($set, create_function('&$a', 'if(isset($a)): $a = "\'".AddSlashes($a)."\'
Class requêtes [ par eltyty ]
Bonjour, je souhaiterai avoir votre avis quant à la pertinence de ma classe. Il s'agit d'une classe pour l'insertion dans une table. Je souhaitais ut
SQL? Problème avec une variable [ par Fidji56 ]
Bonjour j'ai un problème avec cette ligne de code: [code=php]$reponse = mysql_query("SELECT * FROM `blog` WHERE mail_db = $mail"); [/code] Mais ell
Rajouter un Array dans un Array.. [ par onylink ]
Bonjour, En vu d'écrire sur un fichier CSV, j'essaie de faire un array constituer d'array. Je sais qu'il existe une méthode "manuel" [code=php]$lise
Problème onclick [ par pereweed ]
Bonjour, J'ai un problème avec mon code. [code=php]echo " ";[/code]
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|