NaviServer - programmable web server

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

# ns_rand(n) 4.99.8 naviserver "NaviServer Built-in Commands"

## Name

ns_rand - Generate a random number

## Table Of Contents

## Synopsis

- ns_rand ?maximum?

## 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 &lt;= n &lt; 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