Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/30: Рейтинг темы: голосов - 30, средняя оценка - 4.70
 Аватар для KingDoc
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 60

Substr с конца строки

25.01.2015, 17:47. Показов 6142. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP
1
$a = substr($string, strrpos($string, '(')+1);
Как изменить данную функцию, чтобы обрезало с конца строки с этими же условиями?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.01.2015, 17:47
Ответы с готовыми решениями:

Последний символ строки (strlen и substr)
Есть код, который записывает в файл количество посещений данной страницы. При каждом десятом посещении выводится некоторое сообщение. По...

Ошибка с substr(): "substr() expects parameter 1 to be string, array given"
Помогите, не могу понять что не так. Как сделать что-бы заработало? Вот часть кода: $rgrt_one = substr($flags, 0, floor($stringL)); ...

Функция substr, вывод первого символа строки
Хотел применить функцию substr и выбрать первый символ из полей таблицы БД, но что-то не срослось... <?php $var =...

8
53 / 44 / 10
Регистрация: 10.12.2013
Сообщений: 197
Записей в блоге: 1
25.01.2015, 20:13
Попробуйте применить функцию strrev($string);
т.е. переворачиваете строку, конец строки оказывается в начале, обрезаете сколько надо и переворачиваете обратно.
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
25.01.2015, 20:31
Цитата Сообщение от KingDoc Посмотреть сообщение
Как изменить данную функцию, чтобы обрезало с конца строки с этими же условиями?
Как то ужасающе Ваш скрипт выглядит. Лучше скажите чего Вы хотите добиться. Какая исходная строка, что из нее нужно получить?
0
 Аватар для KingDoc
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 60
25.01.2015, 20:56  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
Как то ужасающе Ваш скрипт выглядит. Лучше скажите чего Вы хотите добиться. Какая исходная строка, что из нее нужно получить?
Мне тоже не совсем нравится.
Приходят данные в виде - " 31 (4) " (пример), но вместо 4 может быть 100, 10 и т.п. Мне нужно только первое число оставить - 31 (в данном случае). В данном случае он режет до символа "(", но сначала строки.
Резать контроллер для вывода их не хочу, т.к. в другом выводе эти данные нужны (и дублировать его тоже желания нет - строчек там не мало).
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
25.01.2015, 22:26
Цитата Сообщение от KingDoc Посмотреть сообщение
Мне тоже не совсем нравится.
Приходят данные в виде - " 31 (4) " (пример), но вместо 4 может быть 100, 10 и т.п. Мне нужно только первое число оставить - 31 (в данном случае). В данном случае он режет до символа "(", но сначала строки.
Резать контроллер для вывода их не хочу, т.к. в другом выводе эти данные нужны (и дублировать его тоже желания нет - строчек там не мало).
Опять ничего не понятно... Вы можете привести все возможные примеры строк, и нужный соответствующий результат для каждой? Без лишних слов. Я думаю это будет легче сделать с помощью регулярных выражений.
0
 Аватар для KingDoc
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 60
26.01.2015, 11:14  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
Опять ничего не понятно... Вы можете привести все возможные примеры строк, и нужный соответствующий результат для каждой? Без лишних слов. Я думаю это будет легче сделать с помощью регулярных выражений.
Есть переменная, которая их выводит. Выводится это в виде <?php echo $test ?> в цикле foreach.
Могут быть значения выведенные (к примеру):
31 (100)
32 (4)
33 (50)
34 (700)

Нужно оставлять только первые цифры (31, 32, 33, 34). Т.е. оставить на вывод нужно:
31
32
33
34
0
53 / 44 / 10
Регистрация: 10.12.2013
Сообщений: 197
Записей в блоге: 1
26.01.2015, 13:43
Так в чём проблема? Находите в строке пробел или левую скобочку, узнаёте её номер и далее обрезаете строку от 0 и до этого номера. Зачем вам обрезать с конца строки совсем непонятно. Посмотрите в поиске "функции работы со строками php", например вот. Используете subpos() и substr().
1
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
26.01.2015, 14:04
Лучший ответ Сообщение было отмечено KingDoc как решение

Решение

Цитата Сообщение от KingDoc Посмотреть сообщение
Могут быть значения выведенные (к примеру):
31 (100)
32 (4)
33 (50)
34 (700)
Нужно оставлять только первые цифры (31, 32, 33, 34). Т.е. оставить на вывод нужно:
31
32
33
34
PHP
1
2
3
4
5
6
7
<?
$a[] = "31 (100)";
$a[] = "32 (4)";
$a[] = "33 (50)";
$a[] = "34 (700)";
foreach ($a as $v)
    echo substr($v, 0, strpos($v, "("))."<br/>\r\n";
результат
Code
1
2
3
4
31 
32 
33 
34
0
 Аватар для KingDoc
0 / 0 / 0
Регистрация: 26.11.2014
Сообщений: 60
26.01.2015, 14:59  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
PHP
1
2
3
4
5
6
7
<?
$a[] = "31 (100)";
$a[] = "32 (4)";
$a[] = "33 (50)";
$a[] = "34 (700)";
foreach ($a as $v)
    echo substr($v, 0, strpos($v, "("))."<br/>\r\n";
результат
Code
1
2
3
4
31 
32 
33 
34
PHP
1
<?php echo mb_substr($filter['name'], 0, strrpos($filter['name'], '(')); ?>
Да, спасибо. Реализовал таким образом.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.01.2015, 14:59
Помогаю со студенческими работами здесь

Для заданной строки s, удалить все подстроки substr
Нужно для заданной строки s, удалить все подстроки substr! Помогите пожалуйста

Ввести строки и через n символов первой строки вставить вторую строку, и так до конца строки
Помогите исправить баг задача состоит в следующем :ввести строку и простроку тоесть две строки и надо через (n) символов первой строки...

Разработать алгоритм и программу для разбиения текста на строки (как признак конца строки в тексте использовать символ @)
Разработать алгоритм и программу для разбиения текста на строки (как признак конца строки в тексте использовать символ @). помогите для...

Вывести на экран часть строки после";" и до конца строки строка вводится с клавиатуры
задание в названии Добавлено через 6 минут срочно плиз

Маркер конца строки
Доброго времени суток, уважаемые форумчане.:handshake: Дело обстоит так, имеется задача &quot;Определить в заданной строке координаты...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru