Downloads
Documentation
Get Involved
Help
Search docs
International PHP Conference Berlin 2025
Getting Started
Introduction
A simple tutorial
Language Reference
Basic syntax
Types
Variables
Constants
Expressions
Operators
Control Structures
Functions
Classes and Objects
Namespaces
Enumerations
Errors
Exceptions
Fibers
Generators
Attributes
References Explained
Predefined Variables
Predefined Exceptions
Predefined Interfaces and Classes
Predefined Attributes
Context options and parameters
Supported Protocols and Wrappers
Security
Introduction
General considerations
Installed as CGI binary
Installed as an Apache module
Session Security
Filesystem Security
Database Security
Error Reporting
User Submitted Data
Hiding PHP
Keeping Current
Features
HTTP authentication with PHP
Cookies
Sessions
Handling file uploads
Using remote files
Connection handling
Persistent Database Connections
Command line usage
Garbage Collection
DTrace Dynamic Tracing
Function Reference
Affecting PHP's Behaviour
Audio Formats Manipulation
Authentication Services
Command Line Specific Extensions
Compression and Archive Extensions
Cryptography Extensions
Database Extensions
Date and Time Related Extensions
File System Related Extensions
Human Language and Character Encoding Support
Image Processing and Generation
Mail Related Extensions
Mathematical Extensions
Non-Text MIME Output
Process Control Extensions
Other Basic Extensions
Other Services
Search Engine Extensions
Server Specific Extensions
Session Extensions
Text Processing
Variable and Type Related Extensions
Web Services
Windows Only Extensions
XML Manipulation
GUI Extensions
Keyboard Shortcuts
?
This help
j
Next menu item
k
Previous menu item
g p
Previous man page
g n
Next man page
G
Scroll to bottom
g g
Scroll to top
g h
Goto homepage
g s
Goto search
(current page)
/
Focus search box
Introduction »
« Changelog
PHP Manual
Function Reference
Other Basic Extensions
Change language:
English
German
Spanish
French
Italian
Japanese
Brazilian Portuguese
Russian
Turkish
Ukrainian
Chinese (Simplified)
Other
Random Number Generators and Functions Related to Randomness
Introduction
Predefined Constants
Examples
Random Functions
getrandmax
— Show largest possible random value
lcg_value
— Combined linear congruential generator
mt_getrandmax
— Show largest possible random value
mt_rand
— Generate a random value via the Mersenne Twister Random Number Generator
mt_srand
— Seeds the Mersenne Twister Random Number Generator
rand
— Generate a random integer
random_bytes
— Get cryptographically secure random bytes
random_int
— Get a cryptographically secure, uniformly selected integer
srand
— Seed the random number generator
Random\Randomizer
— The Random\Randomizer class
Random\Randomizer::__construct
— Constructs a new Randomizer
Random\Randomizer::getBytes
— Get random bytes
Random\Randomizer::getBytesFromString
— Get random bytes from a source string
Random\Randomizer::getFloat
— Get a uniformly selected float
Random\Randomizer::getInt
— Get a uniformly selected integer
Random\Randomizer::nextFloat
— Get a float from the right-open interval [0.0, 1.0)
Random\Randomizer::nextInt
— Get a positive integer
Random\Randomizer::pickArrayKeys
— Select random array keys
Random\Randomizer::__serialize
— Serializes the Randomizer object
Random\Randomizer::shuffleArray
— Get a permutation of an array
Random\Randomizer::shuffleBytes
— Get a byte-wise permutation of a string
Random\Randomizer::__unserialize
— Deserializes the data parameter into a Randomizer object
Random\IntervalBoundary
— The Random\IntervalBoundary Enum
Random\Engine
— The Random\Engine interface
Random\Engine::generate
— Generates randomness
Random\CryptoSafeEngine
— The Random\CryptoSafeEngine interface
Random\Engine\Secure
— The Random\Engine\Secure class
Random\Engine\Secure::generate
— Generate cryptographically secure randomness
Random\Engine\Mt19937
— The Random\Engine\Mt19937 class
Random\Engine\Mt19937::__construct
— Constructs a new Mt19937 engine
Random\Engine\Mt19937::__debugInfo
— Returns the internal state of the engine
Random\Engine\Mt19937::generate
— Generate 32 bits of randomness
Random\Engine\Mt19937::__serialize
— Serializes the Mt19937 object
Random\Engine\Mt19937::__unserialize
— Deserializes the data parameter into a Mt19937 object
Random\Engine\PcgOneseq128XslRr64
— The Random\Engine\PcgOneseq128XslRr64 class
Random\Engine\PcgOneseq128XslRr64::__construct
— Constructs a new PCG Oneseq 128 XSL RR 64 engine
Random\Engine\PcgOneseq128XslRr64::__debugInfo
— Returns the internal state of the engine
Random\Engine\PcgOneseq128XslRr64::generate
— Generate 64 bits of randomness
Random\Engine\PcgOneseq128XslRr64::jump
— Efficiently move the engine ahead multiple steps
Random\Engine\PcgOneseq128XslRr64::__serialize
— Serializes the PcgOneseq128XslRr64 object
Random\Engine\PcgOneseq128XslRr64::__unserialize
— Deserializes the data parameter into a PcgOneseq128XslRr64 object
Random\Engine\Xoshiro256StarStar
— The Random\Engine\Xoshiro256StarStar class
Random\Engine\Xoshiro256StarStar::__construct
— Constructs a new xoshiro256** engine
Random\Engine\Xoshiro256StarStar::__debugInfo
— Returns the internal state of the engine
Random\Engine\Xoshiro256StarStar::generate
— Generate 64 bits of randomness
Random\Engine\Xoshiro256StarStar::jump
— Efficiently move the engine ahead by 2^128 steps
Random\Engine\Xoshiro256StarStar::jumpLong
— Efficiently move the engine ahead by 2^192 steps
Random\Engine\Xoshiro256StarStar::__serialize
— Serializes the Xoshiro256StarStar object
Random\Engine\Xoshiro256StarStar::__unserialize
— Deserializes the data parameter into a Xoshiro256StarStar object
Random\RandomError
— The Random\RandomError class
Random\BrokenRandomEngineError
— The Random\BrokenRandomEngineError class
Random\RandomException
— The Random\RandomException class
Found A Problem?
Learn How To Improve This Page
•
Submit a Pull Request
•
Report a Bug
+
add a note
User Contributed Notes
There are no user contributed notes for this page.
↑
and
↓
to navigate •
Enter
to select •
Esc
to close
Press
Enter
without selection to search using Google