我有以下HTML代码:
<form method="post" action="">
<b>Name: <input type="text" name="username" size="20" />
<input type="submit" value="Login" name="login" />
</form>
和
<?php
if(isset($_POST['login'])){
$check = $_POST['username'];
?>
每当用户提交用户名时,用户都应该收回他的用户名,但需要进行以下修改:
1)* Sapce bar将替换为“_”
2)*所有字母都将成为非大写字母。
实施例: 用户名:“我喜欢冰淇淋”
结果: i_like_icecream
该消息应通过回显显示给用户作为变量。
echo "$result";
我正在考虑使用preg_repalce进行此操作,但由于我不熟悉它,所以没有真正设法。任何帮助都会得到满足。
答案 0 :(得分:0)
preg_replace()功能太强大,但对于此任务来说却很昂贵。您需要更改的模式是不变的,因此您最好使用str_replace()和mb_strtolower()
$encoding = 'UTF-8'; // optional
$name = $_POST['usernamename']
$name = str_replace(' ', '_', $name);
$name = mb_strtolower($name, $encoding); // or $name = mb_strtolower($name); if you don't specify encoding