PHP は現在最も広く使用されている Web ベースのプログラミング言語であり、Facebook などの大規模なサイトを含む数百万の Web サイトを運営しています。ここでは、あらゆるタイプの PHP 開発者に役立つ、実用的で便利な PHP コードの抜粋を 21 個集めています。
1. 読み取り可能なランダム文字列
このコードは、辞書の単語に近い、実用的でパスワード検証機能を備えた可読文字列を作成します。
/**************
*@length - ランダムな文字列の長さ (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 {
$password.=$conso[rand(0,19)];
$password.=$vocal[rand(0,4)];
}
return $password;
}
2. ランダムな文字列を生成します
読み取り可能な文字列が必要ない場合は、代わりにこの関数を使用して、ユーザーのランダムなパスワードなどとしてランダムな文字列を作成します。
/*************
*@l - ランダムな文字列の長さ
*/
関数Generate_rand($ l){
$ c = "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz0123456789" ($i=0; $i $rand.= $c[rand()%strlen($c)];
}
return $rand;
}
3. メールアドレスを暗号化します
このコードを使用すると、任意の電子メール アドレスを HTML 文字エンティティとしてエンコードして、スパム プログラムによる収集を防ぐことができます。
function encode_email($email='info@domain.com', $linkText='お問い合わせ', $attrs ='class="emailencoder"' )
{ // remplazar aroba y puntos
$email = str_replace('@', '@', $email);
$email = str_replace('.', '.', $email);
$email = str_split($email, 5);
$linkText = str_replace('@', '@', $linkText);
$linkText = str_replace('.', '.', $linkText);
$linkText = str_split ($linkText, 5);
$part1 = ' ';
$part4 = '';
$encoded = '';
return $encoded;
}
4. メールアドレスを確認します
電子メール検証は、おそらく中国で最も一般的に使用されている Web フォーム検証です。電子メール アドレスの検証に加えて、このコードは電子メール ドメインが属する DNS の MX レコードをチェックすることも選択でき、電子メール検証機能を作成します。より強力です。
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;
}
5. 列出目录内容
function list_files($dir)
{
if(is_dir($dir))
{
if($handle = opendir($dir))
{
while (($file = readdir($handle)) !== false)
{
if($file != "." && $file != ".." && $file != "Thumbs.db ")
{
echo ''.$file.'
' ."n";
}
}
closeir($handle);
}
}
}
6. 销毁目录
1 つのコンテンツを除いて、そのコンテンツが含まれています。
/******@dir - 破棄するディレクトリ
*@virtual[オプション]- 仮想ディレクトリかどうか
*/
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 == '.' $file == '..')
{
続く;
}
elseif (is_dir($dir. $ds.$file))
{
destroyDir($dir.$ds.$file);
}
else
{
unlink($dir.$ds.$ file);
}
}
Closedir($handle);
rmdir($dir);
return true;
}
else
{
return false;
}
}
Twitter などの一般的な Web サービスと同様に、API を介してデータが提供され、API データのさまざまな転送形式 (JSON、XML など) をどのように解析できるかを知ることができます。
$json_string='{"id":1,"name":"foo","email":"foo@foobar.com","interest":["wordpress","php"]} ';
$obj=json_decode($json_string);echo $obj->name; // foo
echo $obj->interest[1] を出力します。 //php
を出力します