カテゴリー
SugiBlog Webデザイナー・プログラマーのためのお役立ちTips

ランダムなパスワード生成

function mkCrypt()
{
    // 配列生成
    $ARRAY1 = range("0", "9");
    $ARRAY2 = range("a", "z");
    $ARRAY3 = range("A", "Z");
    $ARRAY  = array_merge($ARRAY1, $ARRAY2, $ARRAY3);

    $a_pw = "";
    $cnt  = count($ARRAY) - 1;

    // 乱数初期化
    srand((double)microtime()*1000000);


    // ランダム暗号生成
    for($i = 1; $i < = 8; $i++)
    {
        $num   = round(rand(0, $cnt));
        $a_pw .= $ARRAY[$num];
    }

    return $a_pw;
}

または、一意なIDを生成するuniqid関数を使用する

md5(uniqid()); //php5以降のみ
md5(uniqid(rand(), true));

Apache Basic 認証用パスワード生成
function CryptBasic($id, $pw)
{
    $sal = substr($id, 0, 2);
    $pw_crypt = crypt($pw, $sal);

    return $pw_crypt;
}
1,140 views

xmlを生成する

// Create XML Object
$xml = new DOMDocument("1.0", "UTF-8");

// Make a Parent Node
$dataset = $xml->createElement("dataset");
$xml->appendChild($dataset);

$data = $xml->createElement("data");
$dataset->appendChild($data);

// make child node
$data->appendChild($xml->createElement("key", $value));

// Show Data
echo $xml->saveXML();
947 views

xml形式の文字列からxmlオブジェクトを生成する

$xmlstr = file_get_contents("[XMLファイル名]");
if(!$dom = domxml_open_mem($xmlstr))
{
    echo "Error while parsing the document\n";
    exit;
}
$root = $dom->document_element();
$childnodes = $root->child_nodes();
foreach ($childnodes as $value)
{
    $nodeArray[$value->tagname] = $value->get_content();
    $chnode = $value->child_nodes();

    foreach($chnode as $v)
    {
        echo $v->tagname . " : " . $v->get_content() . "<br />";
    }

    echo "<br />";
}
1,157 views

PHPで外部サーバーの画像を取得・保存

php.iniがallow_url_fopen=Onになっていれば可能

// データを取得
$data = file_get_contents("http://URL/To/Filename", FILE_BINARY);
// データを任意の場所に保存
file_put_contents("/PATH/TO/FILENAME", $data);
5,180 views

PDO(PHP Data Object)

PDOのMySQL対応ドライバをPHPに組み込む
コンフィグ時にオプションを追加する

./configure ‐‐with‐pdo‐mysql

簡単な使い方

設定情報

$dbtype = "[データベースの種類]";
$sv     = "[サーバーアドレス]";
$dbname = "[データベース名]";
$user   = "[ユーザー名]";
$pass   = "[パスワード]";

続きを読む…»

1,305 views