Heim  >  Artikel  >  Backend-Entwicklung  >  Analyse einiger gängiger Operationscodes in PHP

Analyse einiger gängiger Operationscodes in PHP

coldplay.xixi
coldplay.xixinach vorne
2020-06-10 09:23:562712Durchsuche

Analyse einiger gängiger Operationscodes in PHP

Einige häufige Operationscodebeispiele in PHP 1

1. PHP kann zufällige Zeichenfolgen lesen

Dieser Code erstellt eine lesbare Zeichenfolge, die dem Wort im Wörterbuch näher kommt, praktisch ist und über Funktionen zur Passwortüberprüfung verfügt.

2. PHP generiert eine zufällige Zeichenfolge

Wenn Sie keine lesbare Zeichenfolge benötigen, verwenden Sie stattdessen diese Funktion, um eine zufällige Zeichenfolge als zufälliges Passwort des Benutzers usw. zu erstellen.

/**@length - length of random string (must be a multiple of 2)**/
  function readable_random_string($length = 6){
      $conso=array("b","c","d","f","g","h","j","k","l","m","n","p","r","s","t","v","w","x","y","z");
      $vocal=array("a","e","i","o","u");
      $password="";
      srand ((double)microtime()*1000000);
      $max = $length/2;
      for($i=1;$i<=$max; $i++){
          $password.=$conso[rand(0,19)];
          $password.=$vocal[rand(0,4)];
      }
      return $password;
  }

3. PHP-kodierte E-Mail-Adresse

Mit diesem Code kann jede E-Mail-Adresse als HTML-Zeichen-Entität kodiert werden, um zu verhindern, dass sie von Spam-Programmen erfasst wird.

/************* *@l - length of random string */ 
function generate_rand($l){ 
    $c= "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; 
    srand((double)microtime()*1000000); 
    for($i=0; $i<$l; $i++) { 
        $rand.= 
    $c[rand()%strlen($c)]; 
    }
    return $rand; 
}

4. PHP-Bestätigung der E-Mail-Adresse

Die E-Mail-Bestätigung ist möglicherweise die am häufigsten verwendete Web-Formularverifizierung. Mit diesem Code kann auch der DNS überprüft werden E-Mail-Domäne. MX-Einträge machen die E-Mail-Verifizierung leistungsfähiger.

function encode_email($email=&#39;info@domain.com&#39;, $linkText=&#39;Contact Us&#39;,$attrs =&#39;class="emailencoder"&#39; ) { 
    // remplazar aroba y puntos $email = 
str_replace(&#39;@&#39;, &#39;@&#39;, $email); 
    $email = str_replace(&#39;.&#39;, &#39;.&#39;, $email); 
    $email = 
str_split($email, 5); 
    $linkText = str_replace(&#39;@&#39;, &#39;@&#39;, $linkText); 
    $linkText = 
str_replace(&#39;.&#39;, &#39;.&#39;, $linkText); 
    $linkText = str_split($linkText, 5); 
    $part1 = &#39;part2 = &#39;ilto:&#39;; 
    $part3 = &#39;" &#39;. $attrs .&#39; >&#39;; 
    $part4 = &#39;&#39;; $encoded = &#39;&#39;; 
$encoded .= "document.write(&#39;$part1&#39;);"; 
    $encoded .= "document.write(&#39;$part2&#39;);"; 
    foreach($email as $e) { 
        $encoded .= "document.write(&#39;$e&#39;);"; 
    } 
    $encoded .= "document.write(&#39;$part3&#39;);"; 
foreach($linkText as $l) { 
        $encoded .= "document.write(&#39;$l&#39;);"; 
    } 
    $encoded .= "document.write(&#39;$part4&#39;);"; 
    $encoded .= &#39;&#39;; 
    return $encoded;
}

5. PHP listet Verzeichnisinhalte auf

function is_valid_email($email, $test_mx = false) { 
if(eregi("^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email)) 
    if($test_mx) { 
        list($username, $domain) = split("@", $email); 
        return getmxrr($domain, $mxrecords); 
    } else {
        return true; 
    }
     
}  else {
    return false; 
}

6. PHP zerstört Verzeichnis

Löscht ein Verzeichnis, einschließlich seines Inhalts.

function list_files($dir){ 
    if(is_dir($dir)) { 
        if($handle = opendir($dir)) { 
            while(($file = readdir($handle)) !== false) { 
                if($file != "." && $file != ".." && $file != "Thumbs.db") { 
                    echo &#39;&#39;.$file.&#39;a>  &#39;."\n"; 
                 } 
            } closedir($handle); 
        } 
   } 
}

7. PHP analysiert JSON-Daten

Wie die meisten gängigen Webdienste wie Twitter, die Daten über offene APIs bereitstellen, weiß es immer, wie verschiedene Übertragungsformate von API-Daten, einschließlich JSON, analysiert werden. XML usw.

/***** *@dir - Directory to destroy *@virtual[optional]- whether a virtual directory */ 
function destroyDir($dir, $virtual = false) { 
    $ds = DIRECTORY_SEPARATOR; 
    $dir = $virtual ? realpath($dir) : $dir; 
    $dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir; 
    if (is_dir($dir) && $handle = opendir($dir)) { 
        while ($file = readdir($handle)) { 
            if ($file == &#39;.&#39; || $file == &#39;..&#39;) { 
                continue; 
            } elseif (is_dir($dir.$ds.$file)) { 
                destroyDir($dir.$ds.$file); 
            } else { 
                unlink($dir.$ds.$file); 
            } 
        } 
        closedir($handle); 
        rmdir($dir); 
        return true; 
    } else { 
        return false; 
    } 
}

8. PHP analysiert XML-Daten

$json_string=&#39;{"id":1,"name":"foo","email":"foo@foobar.com","interest":["wordpress","php"]} &#39;; 
$obj=json_decode($json_string); 
echo $obj->name; //prints foo echo 
$obj->interest[1]; //prints php

9. PHP erstellt eine Protokollabkürzung

Erstellt eine benutzerfreundliche Protokollabkürzung.

//xml string $xml_string="xml version=&#39;1.0&#39;?> Fooname> foo@bar.comname> user> Foobarname> foobar@foo.comname> user>users>"; 
 
//load the xml string using simplexml 
$xml = simplexml_load_string($xml_string); 
 
//loop through the each node of user 
foreach ($xml->user as $user) { 
    //access attribute 
    echo $user[&#39;id&#39;], &#39; &#39;; 
     
    //subnodes are accessed by -> operator 
    echo $user->name, &#39; &#39;; 
    echo $user->email,&#39;&#39;; 
}

Empfohlenes Tutorial: „

PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonAnalyse einiger gängiger Operationscodes in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:liqingbo.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen