2010-08-10 7 views
0

code-quelqu'un peut-il expliquer utres 4 lignes de code php Je suis tellement confus

$res=$this->post("http://address.mail.yahoo.com/?_src=&VPC=print",$post_elements); 
    $emailA=array(); 
    $bulk=array(); 
    $res=str_replace(array(' ',' ',PHP_EOL,"\n","\r\n"),array('','','','',''),$res); 
    preg_match_all("#\<tr class\=\"phead\"\>\<td colspan\=\"2\"\>(.+)\<\/tr\>(.+)\<div class\=\"first\"\>\<\/div\>\<div\>\<\/div\>(.+)\<\/div\>#U",$res,$bulk); 

$post_element est un tableau, je suis principalement consern ablut str_replace et preg_replace_all ligne fonction

Répondre

0

dans ce str_replace code supprime les espaces des personnages et des matchs preg_match_all par regex certaines valeurs dans le code HTML, il n'y a pas preg_replace_all dans le code

2
$res = str_replace(
    array(' ',' ',PHP_EOL,"\n","\r\n"), 
    array('','','','',''), 
    $res); 

moyens : remplacez les chaînes du premier tableau par les valeurs du second tableau, par ex. tourner deux espaces en rien, transformer trois espaces en rien, tournez le caractère de nouvelle ligne dépendant de la plate-forme pour rien, tourner à rien retour à la ligne, tourner CarriageReturn suivi par saut de ligne à rien.

preg_match_all("#\<tr class\=\"phead\"\>\<td colspan\=\"2\"\>(.+)\<\/tr\>(.+)\<div class\=\"first\"\>\<\/div\>\<div\>\<\/div\>(.+)\<\/div\>#U",$res,$bulk); 

signifie que le développeur n'avait aucune idée que HTML ne devrait pas être analysé avec Regex.

0
$res=$this->post("http://address.mail.yahoo.com/?_src=&VPC=print",$post_elements); 
$emailA=array(); 

-> données post à http://address.mail.yahoo.com/?_src=&VPC=print et obtenir la réponse, attribuer à $ res

$res=str_replace(array(' ',' ',PHP_EOL,"\n","\r\n"),array('','','','',''),$res); 

-> supprimer tout en espace, onglet espace, fin de ligne ...

et référence ici pour la dernière http://php.net/manual/en/function.preg-match-all.php