Eine auf WordPress spezialiserte Suchmaschine für Entwickler und Theme-Autoren



random_bytes ›

Seitn/v
Veraltetn/v
random_bytes ( $bytes )
Parameter:
  • (int) $bytes
    Erforderlich: Ja
Gibt zurück:
  • (string)
Definiert in:
Codex:

Powered by ext/mcrypt (and thankfully NOT libmcrypt)



Quellcode

function random_bytes($bytes)
    {
        try {
            $bytes = RandomCompat_intval($bytes);
        } catch (TypeError $ex) {
            throw new TypeError(
                'random_bytes(): $bytes must be an integer'
            );
        }

        if ($bytes < 1) {
            throw new Error(
                'Length must be greater than 0'
            );
        }

        $buf = @mcrypt_create_iv($bytes, MCRYPT_DEV_URANDOM);
        if (
            $buf !== false
            &&
            RandomCompat_strlen($buf) === $bytes
        ) {
            /**
             * Return our random entropy buffer here:
             */
            return $buf;
        }

        /**
         * If we reach here, PHP has failed us.
         */
        throw new Exception(
            'Could not gather sufficient random data'
        );
    }
}