Php & explode...
Résolu
ixce
Messages postés
51
Date d'inscription
Statut
Membre
Dernière intervention
-
ixce Messages postés 51 Date d'inscription Statut Membre Dernière intervention -
ixce Messages postés 51 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila, je developpe une page php, qui traite un fichier texte appelé essai.log, ce fichier contient des chaines de caracteres.
chacune de ces lignes contient des valeurs separés par des |.
je cherche à entrer les valeurs dans un tableau ----->explode.
en fonction du premier caractere de chaque ligne, et ce, par le biais de switch.
apercu de essai.log:
M|Code='SOUR-LOGCOMBO'|97|SOUR-LOGCOMBO||Souris LOGITECH Combo PS2/série 3 boutons|U|PIECES.SOURIS.|False|76500|0|0|0|0|0|0|0|0|0|0|0|0|0|1|P|0|0|6000|0|0|||1000|||||||V19|28/08/2001 12:42:58|05/09/2001 11:27:32|28/08/2001 12:42:58|True|1000|0|0|False|0|0||||||||||||||||||129|M
C|Code='CAM-SONYPC110'|98|CAM-SONYPC110||Camescope SONY DCR-PC110E |U|PERIPH.CAMESCOPE.|False|10500000|0|0|0|0|0|0|0|0|0|0|0|0|0|1|P|0|0|0|0|0|||1000|||||||V19|05/09/2001 11:27:16|00:00:00|05/09/2001 11:27:16|True|1000|0|0|False|0|0||||||||||||||||||0|C
S|Code='MEM-DIM128S'|60|Code='RES-ROUTRNISNET'|75|Code='MEM-DIM128S'|60|Code='RES-ROUTRNISNET'|75|
et de mon script:
function variabilise($lg) {
//cree le tab a 1 dim, soit la ligne dun tab a 2 dim
$valeurs=array();
//si le premier caractere de la ligne est cms, variabilisation diff
switch ($lg{0}) {
case 'C':
case 'M':
$valeurs=explode("|",$lg);
break;
case 'S':
$valeurs=explode("|",$lg);
break;
}
return $valeurs;
}
mon probleme est que les lignes commencant par s ne sont pas traités, quelquun peut il meclairer?
svp
xavier
voila, je developpe une page php, qui traite un fichier texte appelé essai.log, ce fichier contient des chaines de caracteres.
chacune de ces lignes contient des valeurs separés par des |.
je cherche à entrer les valeurs dans un tableau ----->explode.
en fonction du premier caractere de chaque ligne, et ce, par le biais de switch.
apercu de essai.log:
M|Code='SOUR-LOGCOMBO'|97|SOUR-LOGCOMBO||Souris LOGITECH Combo PS2/série 3 boutons|U|PIECES.SOURIS.|False|76500|0|0|0|0|0|0|0|0|0|0|0|0|0|1|P|0|0|6000|0|0|||1000|||||||V19|28/08/2001 12:42:58|05/09/2001 11:27:32|28/08/2001 12:42:58|True|1000|0|0|False|0|0||||||||||||||||||129|M
C|Code='CAM-SONYPC110'|98|CAM-SONYPC110||Camescope SONY DCR-PC110E |U|PERIPH.CAMESCOPE.|False|10500000|0|0|0|0|0|0|0|0|0|0|0|0|0|1|P|0|0|0|0|0|||1000|||||||V19|05/09/2001 11:27:16|00:00:00|05/09/2001 11:27:16|True|1000|0|0|False|0|0||||||||||||||||||0|C
S|Code='MEM-DIM128S'|60|Code='RES-ROUTRNISNET'|75|Code='MEM-DIM128S'|60|Code='RES-ROUTRNISNET'|75|
et de mon script:
function variabilise($lg) {
//cree le tab a 1 dim, soit la ligne dun tab a 2 dim
$valeurs=array();
//si le premier caractere de la ligne est cms, variabilisation diff
switch ($lg{0}) {
case 'C':
case 'M':
$valeurs=explode("|",$lg);
break;
case 'S':
$valeurs=explode("|",$lg);
break;
}
return $valeurs;
}
mon probleme est que les lignes commencant par s ne sont pas traités, quelquun peut il meclairer?
svp
xavier
A voir également:
- Php & explode...
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
3 réponses
J'ai testé, je ne vois pas de problème. Je récupère bien un tableau correct.
Par contre, je ne comprends pas pourquoi tu fais un SWITCH, vu que le traitement est le même...
Par contre, je ne comprends pas pourquoi tu fais un SWITCH, vu que le traitement est le même...
ixce
Messages postés
51
Date d'inscription
Statut
Membre
Dernière intervention
3
le cas S était traité?
j aurais du vous dire pour le switch,
les lignes que vous voyez sont en fait des Créations, Modifications et Suppression, sur une base de données, le 1er caractère de chaque ligne spécifie laction qui sera réalisée.
pour la mise en variable des lignes commençant par M et C , no problème, c'est plus tard que la différence se fera.
mais pour les lignes commençant par S,en fait il n'y a qu'une ligne commençant par S, et les valeurs se suivent par couple sur le reste de la ligne. en gros, on s'est que c'est une ligne qui engendrera une suppression , mais cela n'est dit qu'une fois, après c'est du |code|référence|code|référence|code|référence|code|référence
Suppr:
S|code|référence|code|référence|code|référence|code|référence
Création/Modification
C(ou M)|code|reference|valeur1|valeur2...|valeur n
et si le switch ne sert a rien dans le mon premier article, c'est parce que , aussi simple que puissent etre la demande, le traitement n'est pas réalisé, après je différencierai l'action du cas S au sein de mon switch.
mais la tout de suite, le switch S et le switch M/C sont les mêmes sauf que S n'est pas traité.
voila, je peux vous mettre les 2 fichiers a partir desquelles je travaille si vous le souhaitez.
et je travaille sur easyPhp
les lignes que vous voyez sont en fait des Créations, Modifications et Suppression, sur une base de données, le 1er caractère de chaque ligne spécifie laction qui sera réalisée.
pour la mise en variable des lignes commençant par M et C , no problème, c'est plus tard que la différence se fera.
mais pour les lignes commençant par S,en fait il n'y a qu'une ligne commençant par S, et les valeurs se suivent par couple sur le reste de la ligne. en gros, on s'est que c'est une ligne qui engendrera une suppression , mais cela n'est dit qu'une fois, après c'est du |code|référence|code|référence|code|référence|code|référence
Suppr:
S|code|référence|code|référence|code|référence|code|référence
Création/Modification
C(ou M)|code|reference|valeur1|valeur2...|valeur n
et si le switch ne sert a rien dans le mon premier article, c'est parce que , aussi simple que puissent etre la demande, le traitement n'est pas réalisé, après je différencierai l'action du cas S au sein de mon switch.
mais la tout de suite, le switch S et le switch M/C sont les mêmes sauf que S n'est pas traité.
voila, je peux vous mettre les 2 fichiers a partir desquelles je travaille si vous le souhaitez.
et je travaille sur easyPhp