За последние 24 часа нас посетили 174915 программистов и 3070 роботов. Сейчас ищут 1714 программистов ...

Как сделать первую букву заглавной?

Тема в разделе "PHP для новичков", создана пользователем miha25, 27 сен 2011.

  1. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    Здравствуйте!

    Подскажите, есть код который должен по идее делать первую букву заглавной, но не делает:

    PHP:
    1. $pos['title']="Продам мопед";
    2.  
    3. $stopwords = array("Продажа","продажа","продается", "Продается", "продам", "ПРОДAМ", "продаю", "Продаю", "продадим", "Продадим", "куплю", "Куплю", "КУПЛЮ","купим", "Купим", "покупаем", "Покупаем", "продаем", "Продаем", "сдаю", "Сдаю", "сдается", "Сдается", "Сдам","сдам", "Аренда", "аренда", "Арендую", "арендую", "В аренду", "в аренду", "Купить,", "", "купить,", ":", "куплю,", "Куплю,", "осуществляем продажу", "Осуществляем продажу", "Продам");
    4.        
    5. $page_title_sm = str_replace($stopwords,"", $pos['title']); // обрезаю первое слово если оно в списке stopwords
    6.  
    7. $first = mb_substr($page_title_sm,0,1, 'UTF-8');//первая буква
    8. $last = mb_substr($page_title_sm,1);//все кроме первой буквы
    9. $first = mb_strtoupper($first, 'UTF-8');
    10. $last = mb_strtolower($last, 'UTF-8');
    11. $page_title = $first.$last;
    12.  
    13. echo $page_title;
    После того как первое слово "Продам" убирает, второе остается с маленькой буквой, а нужно чтобы слово мопед было с большой буквы, в чем может быть причина?
     
  2. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    зачем тебе все это?
    PHP:
    1. <?
    2. $page_title =  mb_convert_case($pos['title'], MB_CASE_TITLE, "UTF-8");
    3. echo $page_title;
    4.  
     
  3. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    Спасибо, но дело в том что мне важно чтобы убирались слова с $stopwords, а следующее за ним слово выводилось с большой буквы
     
  4. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
     
  5. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    Спасибо, но это не работает в моем случае
     
  6. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    miha25
    Не совсем понял в чём проблема. Вам нужно вырезать стоп-слово и в заголовок поместить оставшееся с большой буквы? чем код, приведённый вами не подходит?
     
  7. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    В том то и проблема, если не вырезать стоп слово, все нормально, а вот когда вырезаешь не работает
     
  8. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    не понял. Сначала делаешь все слова с большой буквы, а потом вырезаешь стоп-слова независимо от регистра.
     
  9. alexfer

    alexfer Активный пользователь

    С нами с:
    2 авг 2010
    Сообщения:
    239
    Симпатии:
    0
    Xм. ucfirst подойдет? или я не вкурил?
     
  10. topas

    topas Активный пользователь

    С нами с:
    16 авг 2006
    Сообщения:
    2.258
    Симпатии:
    36
    miha25
    Уважаемый, а не пытаетесь ли вы сделать заглавным пробел?
     
  11. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    Может быть, но как этого избежать?
     
  12. alexfer

    alexfer Активный пользователь

    С нами с:
    2 авг 2010
    Сообщения:
    239
    Симпатии:
    0
    тримы всякие
     
  13. miha25

    miha25 Активный пользователь

    С нами с:
    27 сен 2011
    Сообщения:
    39
    Симпатии:
    0
    alexfer спасибо действительно трим помог, а также спасибо всем кто не прошел мимо