substr()
대신 25SUBSTR()는
$nature_goods
의 28 개 문자를 반환하는 사용자가 특수 문자가 포함 된 문자열을 입력 할 수있는 입력 필드를, 문자의 수를 잘못되어 돌아갑니다.
코드
$nature_goods = "Nature quantityyy of goods is nice 120pcs 1*X23X24898";
echo strlen($nature_goods);
echo "<br>";
echo substr($nature_goods, 0,25);
echo "<br>";
echo strlen(substr($nature_goods, 0,25));
echo "<br>";
echo substr($nature_goods, 25,50);
echo "<br>";
echo strlen(substr($nature_goods, 25,50));
echo "<br>";
출력
53
Nature quantityyy of good
25
s is nice 120pcs 1*X23X24898
28
내가 mb_substr()
도 mb_strlen()
을했지만, 내가 어떤 멀티 바이트 문자열 문제를 만들어 볼 수 없습니다. 누군가 실수를 지적 할 수 있습니까?
실수가 없습니다. 결과는 정확합니다. 'substr ($ nature_goods, 25,50); '만 28을 반환합니다 – bansi
그러나 substr (25,50)은 25 문자를 반환해야합니까? –
아니요, 25 번째 위치에서 최대 50자를 반환합니다. [manual] (http://php.net/manual/en/function.substr.php) 만 확인하면 25 자만 있으면 substr ($ nature_goods, 25,25); – bansi