PHP substr()函数未按预期工作

时间:2015-10-03 08:53:16

标签: php string

我正在删除字符串的第一个字符,我正在使用substr();功能。
例如:

<?php
$amount =  '€300';
echo substr($amount ,1);
?>

此代码正常运行,但它有一些错误。当我显示substr()函数应用的字符串时,它会在字符串的开头显示其他符号。下面的图片有输出。enter image description here

在上图中,您可以看到它显示不需要的符号。但是,当我再次应用substr()函数时,它成功运行。
我只是想知道为什么这个功能有这个符号?这个符号是什么意思?为什么它会出现在输出中?

2 个答案:

答案 0 :(得分:2)

我设法通过使用utf8_decode来解决问题,即:

$amount =  utf8_decode('€300');
echo substr($amount ,1);
//300

答案 1 :(得分:2)

你可以使用mb_substr() php函数 http://php.net/manual/en/function.mb-substr.php

<?php
$amount =  '€300';
echo mb_substr($amount, 1, NULL, "UTF-8");
?>