添加随机字符以编程方式创建用户用户名 wordpress

Add random character to programatically created users username wordpress

我使用 Gravity 表单以编程方式创建用户,我想检查用户名是否存在,如果存在,在 $username 字段的值后添加随机字符。

从 Gravity Form 字段获取我的变量:

$username = rgar( $entry, '16' );

拾取数组:

       $user_data = array(
           'user_login' => $username,
           'user_pass'  => $password,
           'user_email' => $email,
           'role'       => 'customer',
           'first_name' => $first_name,
           'last_name'  => $last_name,
       );

正在创建用户:

    $user_id  = wp_insert_user( $user_data );

如何创建它以便检查现有用户名,如果存在,则向给定的用户名添加一个随机字符?

我认为你最好的办法是花点时间继续向用户名添加随机字符,直到你最终得到一个 non-existing。

像这样的东西应该可以工作:

$characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ-_";

while(username_exists($username)){
    $random_character_idx = rand(0,strlen($characters));
    $username .= substr($characters,$random_character_idx,1);
}

这应该不断向用户名添加随机字符,直到它找到一个空闲字符