如果php中存在用户名,是否执行while循环?
我试图让下面的函数返回一个附加了数字的修改过的用户名。对于每个相同的用户名,该数字应增加1。我调用wordpress函数username_exists()来检查匹配项。请帮忙。谢谢如果php中存在用户名,是否执行while循环?,php,wordpress,do-while,Php,Wordpress,Do While,我试图让下面的函数返回一个附加了数字的修改过的用户名。对于每个相同的用户名,该数字应增加1。我调用wordpress函数username_exists()来检查匹配项。请帮忙。谢谢 function change_username($name) { $q = username_exists($name); $i = 0; do { $name = $name . $i++; } while ($q); return $name; } 您不能“保存”
function change_username($name) {
$q = username_exists($name);
$i = 0;
do {
$name = $name . $i++;
} while ($q);
return $name;
}
您不能“保存”计算结果。此外,您必须将名称的固定部分单独存储。使用while
循环执行这两种操作,如下所示:
$baseName = $name;
$i = 0;
while(username_exists($name)) {
$name = $baseName . (++$i);
}
return $name;
您不能“保存”计算结果。此外,您必须将名称的固定部分单独存储。使用while
循环执行这两种操作,如下所示:
$baseName = $name;
$i = 0;
while(username_exists($name)) {
$name = $baseName . (++$i);
}
return $name;
使用此解决方案,我如何连接分隔符来区分“$baseName”和“$I”,例如“$baseName”。+”。(++$i);'不起作用。@JacobiOjera:如果你开始这样做,那么使用
sprintf
可能更容易阅读,例如$name=sprintf(“%s-%d”,$baseName,++$i)
。否则它只是字符串连接,$baseName.'+'(++$i)
。使用此解决方案,如何连接分隔符来区分'$baseName'和'$i',例如'$baseName.'+'。(++$i);'不起作用。@JacobiOjera:如果你开始这样做,那么使用sprintf
可能更容易阅读,例如$name=sprintf(“%s-%d”,$baseName,++$i)
。否则它只是字符串连接,$baseName.'+'(++$i)
。