2017-10-05 5 views
0

Mon corps de l'e-mail contient les champs E-mail et Numéro de téléphone Je veux extraire ces champs et stocker dans la base de données comment puis-je faire cela? Ceci est mon code PHP ...Comment récupérer une partie particulière du corps de l'e-mail en utilisant PHP (fonction imap)?

<?php 

$hostname = '{imap.gmail.com:993/imap/ssl}INBOX'; 
$username = "myusername"; 
$password = "mypassword"; 

$inbox = imap_open($hostname,$username,$password) or die('Cannot connect to Gmail: ' . imap_last_error()); 


$emails = imap_search($inbox,"ALL"); 

if($emails) { 
$output = ''; 

foreach($emails as $email_number) { 

$headerInfo = imap_headerinfo($inbox,$email_number); 
$structure = imap_fetchstructure($inbox, $email_number); 

$overview = imap_fetch_overview($inbox,$email_number,0); 

$message = imap_qprint(imap_fetchbody($inbox,$email_number,1)); 


$output .= 'Body: '.$message.'<br />'; 
$structure = imap_fetchstructure($inbox, $email_number); 
print_r($structure); 
} 
} 
imap_close($inbox); 

?> 

I m fournissant la capture d'écran de mon corps e-mail, dans ce tout Infront du courrier électronique et numéro de téléphone mobile. Je veux extraire ça. enter image description here

Répondre

1

Vous pouvez essayer

$message = "Business Enquiry for Lister --------- Buyer Contact I 
nformation:aaaaa Mobile/ Cell Phone: +91--------, Email: Not Available<br> 
Buyer's ment Details: We want to buy Lister Gold UV LED Slim POP 
Panel Lights. Size: 15 Inches Power: 15 Watts Kindly send 
me price and other details. d Qty : -"; 


preg_match('# Mobile/ Cell Phone: (.*?), #', $message, $match);// checks for string between "Mobile/ Cell Phone: " and "," 
echo $mobile = $match[1]; 

preg_match('/Email:(.*?)<br> /', $message, $match);//// checks for string between "Email:" and "<br>" 
echo $email = $match[1]; 
+0

Thanx @Muhammed Hafil. J'obtiens un tableau vide, mais si j'ai enlevé les deux traits d'union alors j'ai reçu 'Email:' comme un élément de tableau, pouvez-vous élaborer ce modèle? –

+0

pouvez-vous s'il vous plaît poster ce qui est dans $ message –

+0

$ message = "Demande de renseignements pour Lister --------- Information de contact de l'acheteur: aaaaa Mobile/Téléphone portable: +91 ------- -, Email: Non disponible
Exigences de l'acheteur détails: Nous voulons acheter Lister or UV LED Slim POP lumières du panneau Taille: 15 pouces Puissance: 15 Watts Veuillez me envoyer prix et d'autres détails .. Requis Qté: - " –