字串处理

Home Home
引用 | 编辑 saladin919
2009-08-06 12:14
楼主
推文 x0
就是,我将字串a以长度70字元来切,切好后
因为标点符号的关系让我切出来的新字串d最后一个字为"?"号
所以我想说用取代的方式把"?"销掉
但是,似乎都没办法 囧
他好像找不到那个"?"的样子

是问,有没有办法把"?"销掉?

复制程式
<? 
$a="喜欢吃日本料理的朋友,就一定不能错过益泉屋创意日本料理,亲切、专业的董益泉师傅他一定会竭尽所能的为您服务。";
$t=unpack('a70d', $a);
$d=$t[d];
$change = str_replace("?","",$d);
echo $change;
?>


献花 x0
引用 | 编辑 twnhostCom
2009-08-07 15:17
1楼
  
"?" 是特殊字元喔

建议您查一下特殊字元的编码代号

献花 x0
引用 | 编辑 saladin919
2009-08-10 10:16
2楼
  
已经有解决方法了,如下

mb_substr()可以指定文字编码,就不会像是一般函式将中文当作两个字元处理,这样一来就可以确实做 70 字的切割,只是这 70 个字中、英文都算一个字,所以实际在输出时可能会长短不一(除非使用的字型有同样宽度)。

所以用
mb_substr($a,0,37,"big5");
这样就可以解决了

献花 x0