2011-01-14 53 views
1

我现在有一些关于隐藏某些字符的问题...我想隐藏帐户管理中用户名前面的几个字符。这里是我的问题: 在帐户管理我有$用户名在表中是从数据库中取出我需要这个用户名不会像这样显示: 用户名=> ** rname - 只需用“”替换几个第一个字符使用PHP或类似的代码的网页。如何隐藏从数据库打印的文本

回答

3

我假设你不想让他们知道用户名中有多少个字符?使用substr_replace()

$val = 'username'; 
$output = substr_replace($val, '**', 0, -5); 

输出:**rname

当然,如果一个用户名较短这是不行的。你可以做

$output = substr_replace($val, '**', 0, 3); // or some other length value 
0
echo '***' . substr($username, 3); 
0

我不太确定你在说什么。你想达到这个目的吗?

echo '***', substr($username, 3); 
0

,你可以使用类似这样

<?php 
$username = theusernamehere; 
$userhide = str_pad(substr($username, -4), strlen($username), 'x', STR_PAD_LEFT); 
$userhide = str_replace('xxxx','xx',$userhide); 
echo $userhide; 

?> 
+0

那是什么? :-) – Byakugan 2011-01-14 01:25:04

+0

这是你的问题的答案。你尝试过吗? – andrewk 2011-01-14 01:30:34

0

你可以这样做;

print '***'.substr($username, 3); 
0
substr($username, 2); 

从字符串中删除前两个字符。