пхп

Генеришите случајни број у ПХП-у

Генеришите случајни број у ПХП-у
Генерисање другог броја сваки пут извршавањем скрипте назива се случајним бројем. Случајни број се може користити у разне сврхе у програмирању, као што је генерисање случајног имена датотеке, случајне лозинке и случајног броја који није предвидљив другима. ПХП има много уграђених функција за генерисање случајних бројева на различите начине. ранд (), рандом_инт (), и мт_ранд () функције се користе у ПХП-у за генерисање случајних бројева. Како се ове функције користе за генерисање случајних бројева објашњено је у овом упутству.

Употреба ранда ()

Ова функција се користи за генерисање случајног целобројног броја. Синтакса ове функције дата је у наставку.

Синтакса:

инт ранд ()

или

инт ранд (инт мин, инт мак)

Враћа велики случајни цео број ако се у функцији не користи параметар. Ако су у овој функцији дате две вредности аргумента, она ће вратити случајни цео број на основу вредности аргумената. Употреба ове функције приказана је у наставку.

Пример 1: Различите употребе функције ранд ()

Следећи пример приказује три различите употребе датотеке ранд () функција за генерисање случајног броја. У почетку је ранд () функција се позива два пута без икаквог аргумента да покаже како се случајни бројеви генеришу по дефаулту. Затим се позива два пута са две различите минималне и максималне вредности. Напокон се позива два пута са битовним оператором.

// Употреба функције ранд () без аргумента
одјек "

Случајан број који користи ранд () без аргумента:

";
одјек "

Први случајни број: ". ранд (). "

";
одјек "

Други случајни број: ". ранд (). "

";
// Употреба функције ранд () са аргументима
одјек "

Случајан број користећи ранд () дефинисањем аргумената:

";
одјек "

Први случајни број у опсегу [10-100]: ". ранд (10,100). "

";
одјек "

Други случајни број у опсегу [100-500]: ". ранд (100,500). "

";
// Употреба функције ранд () са битовним оператором
одјек "

Случајан број који користи ранд () помоћу битног оператора:

";
ецхо "Први случајни број помоћу битног оператора (&) са 10:";
ецхо ранд () & 10;
одјек "
Други случајни број помоћу битног оператора (&) са 50: ";
ецхо ранд () & 50;
?>

Излаз:

Сличан излаз ће се појавити након покретања скрипте са сервера. Први излаз приказује два различита велика броја. У другом излазу, први случајни број је генерисан у распону од 10 до 100, а други случајни број је генериран у опсегу од 100 до 500. У трећем излазу, први случајни број је генерисан у опсегу од 0 до 10, а други случајни број је генериран у опсегу од 0 до 50.

Употреба рандом_инт ()

Ова функција се користи за генерисање криптографски псеудо сигурног случајног броја. Функција системског позива гетрандом (2) се користи на Убунту-у за генерисање криптографског случајног броја. Ова функција је сигурнија од ранд () функција јер генерисани број није предвидљив. Али рандом_инт () је спорији од ранд () функцију. Синтакса ове функције дата је у наставку.

Синтакса:

инт рандом_инт (инт мин, инт мак)

У функцији се користе два аргумента за постављање опсега за генерисање криптографског случајног броја. Први аргумент се користи за постављање најниже вредности, а други аргумент за постављање највише вредности броја. Употреба ове функције приказана је у наставку.

Пример 2: Различите употребе функције рандом_инт ()

Следећи пример показује употребу рандом_инт () функција за генерисање случајног броја давањем минималне и максималне вредности. Ове вредности могу бити цео број или плутајући број, али минимум не може бити већи од максималне вредности. У првом рандом_инт () функције, позитивни целобројни бројеви користе се као минималне и максималне вредности. И секунди рандом_инт () функција, негативни целобројни број користи се као минимум, а позитивни целобројни број користи као максимална вредност. У трећем рандом_инт () функција, плутајући бројеви се користе као минимална и максимална вредност.

// Подесимо позитивне мин и позитивне мак вредности
одјек "

Излаз рандом_инт () са позитивним мин и мак вредностима: " .рандом_инт (1000, 10000). "

";
// Подесимо негативне мин и позитивне макс. Вредности
одјек "

Излаз рандом_инт () са негативним мин и позитивним мак вредностима: " .рандом_инт (-500, 10000). "

";
// Подесимо разломљене мин и мак вредности
одјек "

Излаз рандом_инт () са разломљеним мин и мак вредностима: " .рандом_инт (0.67, 54.89). "

";
?>

Излаз:
Следећи слични излаз ће се појавити након покретања скрипте са сервера.

Употреба мт_ранд ()

Ова функција се користи за генерисање висококвалитетних псеудо-случајних бројева помоћу Мерсенне Твистер генератор. Ради брже од ранд () функцију. Синтакса ове функције дата је у наставку.

Синтакса:

инт мт_ранд (инт мин, инт мак)

Као ранд () функције, могу бити потребна два аргумента за постављање макс. и мин. вредности, а ова функција се такође може користити без икаквих аргумената. Употреба ове функције приказана је у наставку.

Пример 3: Различите употребе функције мт_ранд ()

Следећи пример приказује употребу мт_ранд () функција са и без аргумената. Први мт_ранд () функција се позива без икаквог аргумента који ће генерисати велики целобројни број. Други мт_ранд () функција се позива са минималном и максималном вредношћу која ће генерисати број унутар дефинисаног опсега.

// Употреба функције мт_ранд () без аргумента
одјек "

Генерирани случајни број помоћу мт_ранд () без аргумента:

";
одјек "

". мт_ранд (). "

";
// Употреба функције мт_ранд () са аргументима
одјек "

Генерирани случајни број помоћу мт_ранд () дефинисањем аргумената:

";
одјек "

". мт_ранд (15,150). "

";
?>

Излаз:
Следећи слични излаз ће се генерисати након покретања скрипте са сервера. Први излаз показује да је генериран велики целобројни број када се у. Не користи ниједан аргумент мт_ранд () функцију. Други излаз показује да је генерисан број у распону од 15 до 150.

Закључак

Три различита начина за генерисање случајног броја у ПХП-у су објашњена у овом упутству на једноставним примерима. Боље је користити рандом_инт () функцију када је сигурност важна, али је боље користити мт_ранд () функција када је потребно брже генерисање случајног броја. ранд () функција се може користити за генерисање једноставног случајног броја.

Најбоље игре за ручно праћење
Оцулус Куест је недавно представио сјајну идеју ручног праћења без контролера. Са све већим бројем игара и активности које извршавају подршку формално...
Како приказати ОСД прекривач у целом екрану Линук апликација и игара
Играње игара преко целог екрана или коришћење апликација у режиму целог екрана без ометања може вам одсећи релевантне системске информације видљиве на...
Топ 5 карата за хватање игара
Сви смо видели и волели стримовање играња на ИоуТубе-у. ПевДиеПие, Јакесептицие и Маркиплиер само су неки од најбољих играча који су зарадили милионе ...