Bagaimana cara menghasilkan kata sandi acak sederhana dari string tertentu menggunakan PHP?

0
(0)

Bagaimana cara menghasilkan kata sandi acak sederhana dari string tertentu menggunakan PHP?

Pada artikel ini, kita akan melihat cara membuat kata sandi acak menggunakan string yang diberikan. Kami telah memberikan string dan tugasnya adalah menghasilkan kata sandi acak darinya.

Contoh:

Input:  abgADKL123
Output: abgADKL123

Input:  geeksforgeeks
Output:    egksegsfroeke

Untuk mencapai ini, kami menggunakan pendekatan berikut.

Pendekatan 1: Dalam pendekatan ini, kami menggunakan PHP rand () berfungsi dan membuat variabel sementara, dan menggunakan for loop kita membuat karakter acak dari string yang diberikan dan menggabungkan karakter itu ke variabel sementara. Berikut adalah implementasi dari pendekatan ini.

Kode PHP:

PHP

<?php

    

function get_password($str, $len = 0) {

     

    

    $pass = "";

     

    

    

    $str_length = strlen($str);

  

    

    

    

    if($len == 0 || $len > $str_length){

        $len = $str_length;

    }

  

    

    

    

    for($i = 0;  $i < $len; $i++){

         

        

        

        $pass .=  $str[rand(0, $str_length)];

    }

    return $pass;

}

  

  

$str = "GeeksForGeeks";

echo get_password($str, 5) . "n<br/>";

  

$str

"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";

echo get_password($str, 15) ."n<br/>";

  

echo get_password($str) . "n<br/>";

  

?>

Keluaran:

skGse
iWwf9jWZZE9ZL7O
GhRQ8zK4wpX93srUj1LhjsBEeBwBwo4Bh43RyZeSFZbwjVoonkKBgfXiBrEpY

Pendekatan 2: Dalam pendekatan ini, kami menggunakan PHP str_shuffle(), dan kemudian kami menggunakan substr () berfungsi untuk mengekstrak bagian dari string yang diberikan.

Kode PHP:

PHP

<?php

    

function get_password($str, $len = 0) {

     

    

    $pass = "";

    

    

    

    $str_length = strlen($str);

  

    

    

    

    if($len == 0 || $len > $str_length){

        $len = $str_length;

    }

  

    

    $pass = str_shuffle($str);

        

    

    $pass = substr($pass, 0, $len);

    

    return $pass;

}

  

$str = "GeeksForGeeks";

echo get_password($str) . "n<br/>";

  

$str

"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";

echo get_password($str, 15) ."n<br/>";

  

echo get_password($str) . "n<br/>";

  

?>

Keluaran:

oeFssGkeGrkee
rxIhAjCi47wgW1z
r4LZQqlOFGU36i7gEAtzwsnduNXhHKD92ajpxBJc1MRvVmbyeokPIWfCTSY85

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.


Notice: ob_end_flush(): failed to send buffer of zlib output compression (0) in /home/breatgem/widiyanata.com/wp-includes/functions.php on line 4755