Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Не работает mb_convert_case
 
 автор: kilogram   (15.04.2012 в 00:18)   письмо автору
 
 

Так как функция ucfirst преобразует в верхний регистр каждую первую букву, каждого следующего предложения в тексте, решил использовать альтернативную функцию mb_convert_case Прочитал в документации, там такой пример, но на экран ничего не выводистя вообще, хоть и эко стоит, хотя функции mb_strtolower и mb_strtoupper для других возможностей работают. Почему этот код не выводит ничего?

<?php
$str 
"у мэри был маленький ягненок и она его очень любила";
$str mb_convert_case($strMB_CASE_UPPER"UTF-8");
echo 
$str// Выведет У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК И ОНА ЕГО ОЧЕНЬ ЛЮБИЛА
$str mb_convert_case($strMB_CASE_TITLE"UTF-8");
echo 
$str// Выведет У Мэри Был Маленький Ягненок И Она Его Очень Любила
?>

  Ответить  
 
 автор: kilogram   (15.04.2012 в 00:45)   письмо автору
 
   для: kilogram   (15.04.2012 в 00:18)
 

Странно как-то, пришлось перекодировать сам файл index.php в ЮТФ-8, тогда только заработало.

  Ответить  
 
 автор: kilogram   (15.04.2012 в 01:06)   письмо автору
 
   для: kilogram   (15.04.2012 в 00:18)
 

Странно как-то, пришлось перекодировать сам файл index.php в ЮТФ-8, тогда только заработало.


<html><body>
<?php

$str 
"у мэри Был маленький ягненок и она его очень любила. однажды она купила слона.";

$str mb_convert_case($str,MB_CASE_TITLE,"UTF-8");
echo 
$str;
echo 
'<br>'.ucfirst($str);
?>
</body></html>



Что-то эти 2 функции не оправдали моих надежд.
Мне нужно чтоб каждая первая буква, в каждом следующем предложении начиналась с большой буквы, а они в каждом слове все с большой буквы, не подскажете какую функцию в такой ситуации использовать?

  Ответить  
 
 автор: Sfinks   (16.04.2012 в 23:52)   письмо автору
 
   для: kilogram   (15.04.2012 в 01:06)
 

Встроенную наверно не подскажу, но можно через РВ:
<?php
  $str 
"у мэри был маленький ягненок и она его очень любила. однажды она купила слона. вот";
  echo 
preg_replace_callback"#((^|[\.\!\?]).*?)([a-zа-яё])#usi" create_function'$m' 'return $m[1].mb_strtoupper($m[3],"utf-8");' ) , $str );
?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования