从字符串 PHP 中删除商标 - 我的方法
Removing trademark from the string PHP - my method
我知道这个问题在这里已经解决了,但是我做了我的方法,但我不明白为什么它不起作用。
我有以下代码:
$string1 = "sandisk-mobilemate™-duo";
$str_length1 = strlen($string1);
for($i = 0; $i < $str_length1; $i++){
echo $string1[$i]." = ".ord($string1[$i])."<BR />";
if((ord($string1[$i]) == 226) || (ord($string1[$i]) == 132) || (ord($string1[$i]) == 162)){
$string1[$i] == '';
}
}
echo $string1.'<BR />';
现在发表一些评论。循环逐个字符地控制字符串。在第一步中,它以 ASCII 格式显示每个字符的输出。在这一步中,我意识到 TM 标记由三个字符组成(ASCII 中的 226、132、162)。所以第二步应该用空字符('')替换这个字符。但是我不明白为什么这不会发生。
感谢您的指正和解释。
您不必乱用 ascii 值,只需删除符号
$string1 = 'sandisk-mobilemate™-duo';
$string2 = str_replace('™', '', $string1);
echo $string2;
// sandisk-mobilemate-duo
我知道这个问题在这里已经解决了,但是我做了我的方法,但我不明白为什么它不起作用。
我有以下代码:
$string1 = "sandisk-mobilemate™-duo";
$str_length1 = strlen($string1);
for($i = 0; $i < $str_length1; $i++){
echo $string1[$i]." = ".ord($string1[$i])."<BR />";
if((ord($string1[$i]) == 226) || (ord($string1[$i]) == 132) || (ord($string1[$i]) == 162)){
$string1[$i] == '';
}
}
echo $string1.'<BR />';
现在发表一些评论。循环逐个字符地控制字符串。在第一步中,它以 ASCII 格式显示每个字符的输出。在这一步中,我意识到 TM 标记由三个字符组成(ASCII 中的 226、132、162)。所以第二步应该用空字符('')替换这个字符。但是我不明白为什么这不会发生。
感谢您的指正和解释。
您不必乱用 ascii 值,只需删除符号
$string1 = 'sandisk-mobilemate™-duo';
$string2 = str_replace('™', '', $string1);
echo $string2;
// sandisk-mobilemate-duo