替换 PHP 字符串中的选定字符
Replacing selected characters in a PHP string
我有一个变量:
$var = '+44123456789';
我想用 X 替换 3 个字符,即从末尾开始的 3 个字符,所以 :
$var = '+44123XXX789';
我知道我可以使用 :
$var = substr($var, 0, 6) . 'XXX' . substr($var, -3);
但我遇到的问题是 $var
可以有不同的长度。
我如何设置 substr 以同样的方式在任意长度的变量上工作? (P.S。$var
的长度始终至少为 8 个字符。)
试试这个
$var = '+44123123789';
echo substr($var, 0, strlen($var) - 6) . 'XXX' . substr($var, -3);//+44123XXX789
$var = '+44123123789111';
echo substr($var, 0, strlen($var) - 6) . 'XXX' . substr($var, -3);//+44123123XXX111
计算字符串长度,然后按如下所示处理子字符串
$var = '+44123456789';
$len=strlen($var);
if($len>10){
$len=$len-6;
$var = substr($var, 0, $len) . 'XXX' . substr($var, -3);}
elseif($len==10){
$var = substr($var, 0, 6) . 'XXX' . substr($var, -3);
}
echo $var;
您可以通过索引访问字符串中的字符:
$var = '+44123456789';
$c = strlen($var)-6;
$var[$c++] = $var[$c++] = $var[$c++] = 'X';
echo $var;
我有一个变量:
$var = '+44123456789';
我想用 X 替换 3 个字符,即从末尾开始的 3 个字符,所以 :
$var = '+44123XXX789';
我知道我可以使用 :
$var = substr($var, 0, 6) . 'XXX' . substr($var, -3);
但我遇到的问题是 $var
可以有不同的长度。
我如何设置 substr 以同样的方式在任意长度的变量上工作? (P.S。$var
的长度始终至少为 8 个字符。)
试试这个
$var = '+44123123789';
echo substr($var, 0, strlen($var) - 6) . 'XXX' . substr($var, -3);//+44123XXX789
$var = '+44123123789111';
echo substr($var, 0, strlen($var) - 6) . 'XXX' . substr($var, -3);//+44123123XXX111
计算字符串长度,然后按如下所示处理子字符串
$var = '+44123456789';
$len=strlen($var);
if($len>10){
$len=$len-6;
$var = substr($var, 0, $len) . 'XXX' . substr($var, -3);}
elseif($len==10){
$var = substr($var, 0, 6) . 'XXX' . substr($var, -3);
}
echo $var;
您可以通过索引访问字符串中的字符:
$var = '+44123456789';
$c = strlen($var)-6;
$var[$c++] = $var[$c++] = $var[$c++] = 'X';
echo $var;