SORU
4 Aralık 2010, CUMARTESİ


PHP rastgele dize jeneratör

PHP rastgele bir dize oluşturmak için çalışıyorum, ve bu kesinlikle herhangi bir çıktı alıyorum:

<?php
function RandomString()
{
    $characters = ’0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ’;
    $randstring = '';
    for ($i = 0; $i < 10; $i  ) {
        $randstring = $characters[rand(0, strlen($characters))];
    }
    return $randstring;
}
RandomString();
echo $randstring;

Neyi yanlış yapıyorum?

CEVAP
4 Aralık 2010, CUMARTESİ


Bu soruya özellikle cevap vermek, iki sorun var

  1. $randstring echo zaman kapsamında değildir.
  2. Karakterleri birlikte döngü içinde birleştirilmiş değil.

İşte düzeltmeleri ile kod parçacığı:

function generateRandomString($length = 10) {
    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $charactersLength = strlen($characters);
    $randomString = '';
    for ($i = 0; $i < $length; $i  ) {
        $randomString .= $characters[rand(0, $charactersLength - 1)];
    }
    return $randomString;
}

Çağrı ile rastgele dize altında çıktı:

// Echo the random string.
// Optionally, you can give it a desired string length.
echo generateRandomString();

Lütfen bu öngörülebilir rasgele dizeleri oluşturur unutmayın. Güvenli belirteçleri, reference this answer oluşturmak istiyorsanız.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Fubar Protocol

    Fubar Protoc

    21 AĞUSTOS 2010
  • Joe DiFeo

    Joe DiFeo

    7 AĞUSTOS 2012
  • RaverX DouBle StAg XI

    RaverX DouBl

    23 Mayıs 2008