Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
0 / 0 / 1
Регистрация: 10.05.2017
Сообщений: 7
1

Это интересно. Как вывести символ из строки?

10.05.2017, 19:49. Показов 1124. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача первая - понятная:
PHP
1
2
3
4
$name = "hihi!";
$len = strlen($name); //5
$pos = $len-1;
echo $name{$pos};
получаем !. Если $name = "hihi", то получим i.
а если
PHP
1
2
3
4
$name = "Вова!";
$len = strlen($name); //9
$pos = $len-1;
echo $name{$pos};
получаем !. Если $name = "вова", то получим кракозябру.
Даже если пропишу
PHP
1
2
3
4
$name = "Вова";
$len = strlen($name);
$pos = $len-1;
echo iconv("windows-1251", "UTF-8", $name{$pos});
Кирилические символы не выводятся.
Я знаю, что в UTF-8 наши символы по 2 байта, а латиница по 1, и совершенно не понимаю, как мне тут вытащить символ, даже если я использую mb_strlen($name) - все равно выводится ерунда.
Подскажите, или объясните пожалуйста, как извлечь кирилический символ из такой строки. уже всю голову сломал. Оч интересно.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.05.2017, 19:49
Ответы с готовыми решениями:

Вывести строки, в которых символ «*» встречается не менее 2 раз и заменить символ «*» на символ «_»
День добрый. Имеется условие лабы. Написать программу, в которой с клавиатуры вводится до 10...

Найти символ первой строки, который первым не совпал с одним из символов второй строки. Вывести слово, в которое входит этот символ
Заданы 2 строки, состоящие из слов, разделенных пробелами. Определить местоположение символа первой...

интересно, как это делается
очень интересно узнать технологию того, кк делаются страницы вида:...

Строка: Каждый вводимый символ добавлять к началу строки. Как это реализовать?
Нужно вводить символ, и добавлять его к началу строки. Как это реализовать ? Может есть у кого...

2
Эксперт PHP
3106 / 2591 / 1219
Регистрация: 14.05.2014
Сообщений: 7,236
Записей в блоге: 1
10.05.2017, 20:57 2
_Luka_, для многобайтных кодировок нужно использовать соответствующие функции
PHP
1
2
3
4
$name = "Вова";
$len = mb_strlen($name);
$pos = $len - 1;
echo mb_substr($name, $pos, 1);
0
0 / 0 / 1
Регистрация: 10.05.2017
Сообщений: 7
10.05.2017, 21:00  [ТС] 3
Благодарю.
вот ответ:
PHP
1
2
$name = "Вова";
echo mb_substr($name, 0, 1, 'utf-8'); // в
0
10.05.2017, 21:00
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.05.2017, 21:00
Помогаю со студенческими работами здесь

Как вывести последний символ строки?
Вот у меня есть макет: public char last(String lector){ Lector lector = lectors; for (int...

Как вывести из строки только второй символ?
Как вывести из строки только второй символ? входные данные N 3 E 2 W 4 S 5 выходные...

Как вывести на экран третий символ строки?
Как вывести на экран третий символ строки?

Вывести на экран символ 1 в первую строку, символ 2 на вторую, и так далее.Строки 10-25 заполнить соответственно буквами
Вывести на экран символ "1" в первую строку, символ "2" на вторую, и так далее. Строки 10 - 25...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru