Jak zdobyć pierwsze 5 znaków z ciągu za pomocą php
$myStr = "HelloWordl";
wynik powinien być taki
$result = "Hello";
Jak zdobyć pierwsze 5 znaków z ciągu za pomocą php
$myStr = "HelloWordl";
wynik powinien być taki
$result = "Hello";
Odpowiedzi:
W przypadku ciągów jednobajtowych (np. US-ASCII, rodzina ISO 8859 itp.) Należy używać, substr
aw przypadku ciągów wielobajtowych (np. UTF-8, UTF-16 itp.) mb_substr
:
// singlebyte strings
$result = substr($myStr, 0, 5);
// multibyte strings
$result = mb_substr($myStr, 0, 5);
if(substr($myURL, 0, 4) == "www.") $myURL = preg_replace('/www./', '', $myURL, 1);
$url = "www.subwww.myweirddomainwww.com"
? Bez wstępnego sprawdzenia substr($url, 0, 4)
, zwrócone $url
jest zrujnowane !!
Użyj substr()
:
$result = substr($myStr, 0, 5);
substr("Häagen-Dazs", 0, 5) == "Häag"
- Co ja robię źle?
mb_substr
.
Alternatywny sposób na uzyskanie tylko jednej postaci.
$str = 'abcdefghij';
echo $str{5};
mb_substr(i, 1)
, aby uzyskać i
th charakter. @RobertPounder - ponieważ nie obejmuje uzyskania więcej niż jednej postaci.
$string = "Häagen-Dazs"; $stringFirstChars = function($amount, $string) { $i=0;$done=false;$return = '';while($done == false) {$return.=$string{$i};if($amount===$i)$done=true;$i++;}return $return;}; var_dump($stringFirstChars(5, $string));
(skopiuj to wklej do phptester.net lub my)
Możesz uzyskać wynik, po prostu używając substr () :
Składnia substr (ciąg, początek, długość)
Przykład
<?php
$myStr = "HelloWordl";
echo substr($myStr,0,5);
?>
Wynik :
Hello