Generate Random Passwords in PHP

Here is a function I wrote to generate a random string in PHP. It is probably most useful for generating passwords. You can specify the length of the resulting string, as well as what characters are allowed. The default length is eight and the default character set is alphanumeric.

function random_string($length = 8, $chars = null) {
    if( empty($chars) ) $chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    while( strlen($s) < $length) {
        $s .= substr($chars, rand(0, strlen($chars) - 1), 1);
    return $s;
// Example
echo random_string(10);
Author avatar

About the author

New Hampshirite building web apps in Florida. Creator of Surreal CMS, Postleaf, and DirtyMarkup.

Need to get in touch? Catch me on Twitter.