|
|
|
| Здравствуйте! Прошу прощения, что беспокою по мелочному вопросу, но надеюсь на вашу помощь.
У меня есть число, например: 1 300 и я не могу удалить из него пробел. Пробовал через str_replace() и регулярным выражением, ничего не вышло. Ниже приведу часть кода, где я пробую это сделать:
$content = file_get_contents("http://api-maps.yandex.ru/services/route/1.0/route.xml?callback=id_135263855230888431510&lang=ru_RU&rll=".$city1_1."%2C".$city1_2."~".$city2_1."%2C".$city2_2);
$a1 = explode("\"", $content);
if($a1[37]=="Time")
{
$km = explode("км",$a1[33]);
$main_km = $km[0];
}
if($a1[33]=="Time")
{
$km = explode("км",$a1[37]);
$main_km = $km[0];
}
}
echo str_replace (" ","","$main_km");
|
| |
|
|
|
|
|
|
|
для: milkaa
(13.11.2012 в 20:27)
| |
$main_km = '1 300';
echo mb_str_replace (" ","","$main_km");
|
Данный код прекрасно работает и выводит 1300 без пробелов.
Возможно у вас проблемы с используемой кодировкой. попробуйте функцию для мультибайтовой кодировки
function mb_str_replace($needle, $replacement, $haystack)
{
$needle_len = mb_strlen($needle);
$replacement_len = mb_strlen($replacement);
$pos = mb_strpos($haystack, $needle);
while ($pos !== false)
{
$haystack = mb_substr($haystack, 0, $pos) . $replacement
. mb_substr($haystack, $pos + $needle_len);
$pos = mb_strpos($haystack, $needle, $pos + $replacement_len);
}
return $haystack;
}
echo mb_str_replace(" ","","$main_km");
|
| |
|
|
|
|
|
|
|
для: xxxLEOxxx
(14.11.2012 в 00:07)
| | Спасибо за совет. В строке был неразрывный пробел. Я его убрал, а после, надо было строку в другую кодировку перевести и убрать символ.
Еще раз спасибо за совет и отклик на вопрос! | |
|
|
|