| Autor | Zpráva | ||
|---|---|---|---|
| hajk Profil * |
#1 · Zasláno: 21. 1. 2015, 16:56:56
Používám utf-8 (PHP 5.2) a potřebuji do proměnné načítat vše před poslední mezerou v řetězci viz příklad:
$text = "nějaký text o žluťoučkém koníčkovi třeba"; očekávaný výsledek: $promenna = "nějaký text o žluťoučkém koníčkovi"; Díky, začínám ;-) |
||
| Taps Profil |
hajk:
Níže uvádím dvě řešení <?
$text = "nějaký text o žluťoučkém koníčkovi třeba";
$slova = explode(" ",$text);
$posledni = array_pop($slova);
unset($posledni);
foreach($slova as $s){
$obsah[] = $s;
}
echo implode(" ",$obsah);
?><?
<?php
$text = "nějaký text o žluťoučkém koníčkovi třeba";
if(strrpos($text," ") !== false){
$posledni = strrpos($text," ");
}
echo substr($text,0,$posledni);
?>
?> |
||
| hajk Profil * |
#3 · Zasláno: 21. 1. 2015, 18:00:21
děkuji, akorát abych měl jasno, používám kódování utf-8 a někde jsem četl že funkce substr() počítá nějak špatně s tímto kódováním, nebo jsem si to popletl s něčím jiným?
Jdu to vyzkoušet....... |
||
| lionel messi Profil |
#4 · Zasláno: 21. 1. 2015, 18:30:43
hajk:
„akorát abych měl jasno, používám kódování utf-8 a někde jsem četl že funkce substr() počítá nějak špatně s tímto kódováním, nebo jsem si to popletl s něčím jiným?“ Nepoplietol, Tapsove riešenia sú vynikajúce, pre prácu s dvojbajtovým kódovaním jednoducho zameň substr za mb_substr.
|
||
| Chro. Profil |
#5 · Zasláno: 21. 1. 2015, 19:16:55
Nebo bez substr, strlen, count, cyklů...
$text = 'jedna dva tři čtyři';
$zkraceno = implode(' ', explode(' ', $text, -1));
//hodnota -1 parametru ve funkci explode způsobí ignoraci posledního prvku pole |
||
|
Časová prodleva: 11 let
|
|||
0