1

PHP を使用してランダムなパブリック IP アドレスを生成しようとしています。以下のようにこれを行うために作成した機能に関するフィードバックをいただければ幸いです。コーディング方法で改善できると思われる点はありますか? より少ないコード行で実行できますか? ケータリングしていない予約番号はありますか? rand() の代わりに mt_rand() を使用する必要がありますか? すべてのフィードバックに感謝します。ありがとう。

function generateIP() {
    $q1 = rand(3,253);

    //stop the first quadrant being one from a resrved range
    while ($q1 == '10'|| $q1 == '100'|| $q1 == '127' || $q1 == '169' || $q1 == '172' || $q1 == '192' || $q1 == '198' || $q1 == '203' || $q1 == '224' || $q1 == '240') {
        $q1 = rand(3,253);
    }

    $q2 = rand(0,255);
    $q3 = rand(0,255);
    $q4 = rand(0,255);
    $ip = $q1.'.'.$q2.'.'.$q3.'.'.$q4;
    return $ip;
}
4

3 に答える 3

1

これはどう?

function generateIP() {
$q1 = 0;
do
{
    $q1 = rand(1,255);

}
while($q1 != '0'|| $q1 != '10'|| $q1 != '100'|| $q1 != '127' || $q1 != '169' || $q1 != '172' || $q1 != '192' || $q1 != '198' || $q1 != '203' || $q1 != '224' || $q1 != '240'){

    $q2 = rand(0,255);
    $q3 = rand(0,255);
    $q4 = rand(0,255);
    $ip = $q1.'.'.$q2.'.'.$q3.'.'.$q4;
    return $ip;
};
于 2013-04-03T23:40:16.053 に答える