2017-02-01 14 views
-2
$C = $_POST['Cc']; 
$X = $_POST['X']; 
$CX = $_POST['Cc'] . $_POST['X']; 

$NC = preg_replace_callback("/x/" ,function() {return rand(0,9);}, $CX); 

      $New = $NC ; 
      $NNew = str_repeat($New,10); 
      echo $NNew; 

что не так, когда я вывожу его, он дает мне то же самое число Как сделать это Не давать мне такие же цифры ??Php Генерировать случайное число без повторения

ответ

1

Это, в основном, вы не меняете семена для метода rand. Каждый раз, когда он получает одинаковое семя и генерирует одинаковый номер.

Прочитайте эту инструкцию PHP: http://php.net/manual/en/function.srand.php

Проверьте фрагмент кода ниже:

<?php 

// seed with microseconds 
function make_seed() 
{ 
    list($usec, $sec) = explode(' ', microtime()); 
    return $sec + $usec * 1000000; 
} 
srand(make_seed()); 
$randval = rand(0,9); 

echo $randval; 


?> 

Или вы можете использовать mt_rand(), который посеян по-разному на каждом исполнении.