Récupérer une chaine de caractères
Bonjour,
j'essaye de parser un mail. Bon pour l'instant j'enregistre le mail en tant que fichier.
mon fichier texte ressemble à cela :
Cher bidule,
Commande n° : 123-123456-789123456
Veuillez expédier l'article en mode standard.
Réf. Offre : 15d2ds1fd5fsdfs
Votre réf. : 5263252
Quantité : 1
Date de la vente : 09/04/2010
Montant total dû au vendeur : EUR XXX
Comme vous l’avez accepté, suite à cette commande passée le 09/04/2008, vous disposez de deux jours ouvrés pour expédier ces articles.
- - - - - - - - - - - - - - - - - - -
bla bla bla
mon code
Je fais donc :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
$contenu = fopen($nomFichier,777);
$pattern_numItem = "#Votre#";
$pattern_orderId = "#Commande#";
$pattern_orderDate ="#Date de la vente :#";
$mail=array();
if ($contenu)
{
while (!feof($contenu))
{
$buffer = fgets($contenu, 255);
if (preg_match($pattern_numItem,$buffer))
{
$mail['numItem'] = $buffer;
}
if (preg_match($pattern_orderId,$buffer))
{
$mail['orderId'] = $buffer;
}
if (preg_match($pattern_orderDate_orderId,$buffer))
{
$mail['ordeorderDaterId'] = $buffer;
}
}
} |
Résultat de $mail :
Code:
1 2 3 4 5 6 7
|
Array
(
[orderId] => Commande n° : 171-3662065-4475551
[numItem] => 2. Cliquez sur « Accédez Ã* ...
) |
Donc j'ai bien le orderId , mais comment faire pour n'avoir que le 171-3662065-4475551 ?
Par contre le numItem c'est pas du tout ça, je n'y connais pas grand chose en expression régulière, comment dois-je faire ?
Merci beaucoup :(