NaviServer - programmable web server

[ Main Table Of Contents | Table Of Contents | Keyword Index ]

ns_rand(n) 4.99.19 naviserver "NaviServer Built-in Commands"

Name

ns_rand - Generate a random number

Table Of Contents

Synopsis

Description

This command generates a cryptographically secure random number. If maximum is not specified, the random number returned is a floating-point value n such that 0.0 <= n < 1.0. If maximum is specified, it must be a positive integer between 1 and 2147483647, in which case ns_rand will return an integer value n such that 0 <= n <= max - 1. Internally ns_rand is implemented with the drand48() and lrand48() standard library functions. An internal random seed is generated the first time ns_rand is called after the server starts.

COMMANDS

ns_rand ?maximum?

EXAMPLES

   % ns_rand
   0.39938485692
   % ns_rand 10
   7

CAVEAT [ns_rand 1] will always produce the result 0. [ns_rand 2] will produce the desired "coin flip" outcome of 0 or 1. This is standard with Java's java.util.Random implementation of nextInt and most other random number libraries.

See Also

ns_crypto, nsd

Keywords

global built-in, random