279 Как бы я взял последние 7 символов строки ниже? Например: $dynamicstring = "2490slkj409slk5409els"; $newstring = some_function($dynamicstring); echo "The new string is: " . $newstring; Который будет отображать: The new string is: 5409els php string Дейв источник 10 php.net/manual/en/function.substr.php PeeHaa 8 Вопрос идентифицирована как DUP не совсем такой же , как этот вопрос вообще. Асаф 13 Ирония в том, что я попал сюда при поиске в Google по этой теме. вздох Леонард Чаллис 5 @Asaph Я называю это влиянием стека. Люди пытаются что-то закрыть, чтобы сперва задавать вопросы. Сначала они помечают 5 Намного проще и быстрее найти проблему и найти строку кода в ответе в SO, чем изучать руководство. Энгин Япичи Ответы: 598 Используйте substr()с отрицательным числом для второго аргумента. $newstring = substr($dynamicstring, -7); Из документации php : string substr ( string $string , int $start [, int $length ] ) Если start отрицательное, возвращаемая строка будет начинаться с начального символа с конца строки. Асаф источник Но если $ dynamicstring меньше 7 символов, $ newstring будет пустым. (по крайней мере, на PHP 5.2.6) Скотт Чу Вы всегда можете сначала выполнить проверку с помощью strlen, чтобы увидеть, является ли количество символов больше или равно 7. PBwebD 73 хм .. как это? $newstring = substr($dynamicstring, -7); Виталий Муминов источник 6 ты был быстрее :) милковский 14 Более безопасные результаты для работы с многобайтовыми кодами символов, всегда используйте mb_substr вместо substr. Пример для utf-8: $str = 'Ne zaman seni düşünsem'; echo substr( $str, -7 ) . ' <strong>is not equal to</strong> ' . mb_substr( $str, -7, null, 'UTF-8') ; MERT DOĞAN источник 11 Было бы лучше проверить перед получением строки. $newstring = substr($dynamicstring, -7); если символы больше, чем 7, возвращают последние 7 символов, иначе возвращают предоставленную строку. или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7 $newstring = (strlen($dynamicstring)>7)?substr($dynamicstring, -7):"message"; вспомогательная документация Абдул Манан источник Я думаю, что остальная часть необходима, чтобы вернуть сообщение. Что-то вроде ввода неверных данных или .. Нери 1 Вероятно, это лучший ответ, единственное, что может сделать его лучше, это ссылка на руководство по php. Марк Карпентер-младший 2 Для простоты, если вы не хотите отправлять сообщение, попробуйте это $new_string = substr( $dynamicstring, -min( strlen( $dynamicstring ), 7 ) ); mariovials источник 0 за последние 7 символов $newstring = substr($dynamicstring, -7); $ newstring: 5409els для первых 7 символов $newstring = substr($dynamicstring, 0, 7); $ newstring: 2490slk developper источник -1 последние 7 символов строки: $ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop" Keerthi источник
598 Используйте substr()с отрицательным числом для второго аргумента. $newstring = substr($dynamicstring, -7); Из документации php : string substr ( string $string , int $start [, int $length ] ) Если start отрицательное, возвращаемая строка будет начинаться с начального символа с конца строки. Асаф источник Но если $ dynamicstring меньше 7 символов, $ newstring будет пустым. (по крайней мере, на PHP 5.2.6) Скотт Чу Вы всегда можете сначала выполнить проверку с помощью strlen, чтобы увидеть, является ли количество символов больше или равно 7. PBwebD 73 хм .. как это? $newstring = substr($dynamicstring, -7); Виталий Муминов источник 6 ты был быстрее :) милковский 14 Более безопасные результаты для работы с многобайтовыми кодами символов, всегда используйте mb_substr вместо substr. Пример для utf-8: $str = 'Ne zaman seni düşünsem'; echo substr( $str, -7 ) . ' <strong>is not equal to</strong> ' . mb_substr( $str, -7, null, 'UTF-8') ; MERT DOĞAN источник 11 Было бы лучше проверить перед получением строки. $newstring = substr($dynamicstring, -7); если символы больше, чем 7, возвращают последние 7 символов, иначе возвращают предоставленную строку. или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7 $newstring = (strlen($dynamicstring)>7)?substr($dynamicstring, -7):"message"; вспомогательная документация Абдул Манан источник Я думаю, что остальная часть необходима, чтобы вернуть сообщение. Что-то вроде ввода неверных данных или .. Нери 1 Вероятно, это лучший ответ, единственное, что может сделать его лучше, это ссылка на руководство по php. Марк Карпентер-младший 2 Для простоты, если вы не хотите отправлять сообщение, попробуйте это $new_string = substr( $dynamicstring, -min( strlen( $dynamicstring ), 7 ) ); mariovials источник 0 за последние 7 символов $newstring = substr($dynamicstring, -7); $ newstring: 5409els для первых 7 символов $newstring = substr($dynamicstring, 0, 7); $ newstring: 2490slk developper источник -1 последние 7 символов строки: $ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop" Keerthi источник
73 хм .. как это? $newstring = substr($dynamicstring, -7); Виталий Муминов источник 6 ты был быстрее :) милковский 14 Более безопасные результаты для работы с многобайтовыми кодами символов, всегда используйте mb_substr вместо substr. Пример для utf-8: $str = 'Ne zaman seni düşünsem'; echo substr( $str, -7 ) . ' <strong>is not equal to</strong> ' . mb_substr( $str, -7, null, 'UTF-8') ; MERT DOĞAN источник 11 Было бы лучше проверить перед получением строки. $newstring = substr($dynamicstring, -7); если символы больше, чем 7, возвращают последние 7 символов, иначе возвращают предоставленную строку. или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7 $newstring = (strlen($dynamicstring)>7)?substr($dynamicstring, -7):"message"; вспомогательная документация Абдул Манан источник Я думаю, что остальная часть необходима, чтобы вернуть сообщение. Что-то вроде ввода неверных данных или .. Нери 1 Вероятно, это лучший ответ, единственное, что может сделать его лучше, это ссылка на руководство по php. Марк Карпентер-младший 2 Для простоты, если вы не хотите отправлять сообщение, попробуйте это $new_string = substr( $dynamicstring, -min( strlen( $dynamicstring ), 7 ) ); mariovials источник 0 за последние 7 символов $newstring = substr($dynamicstring, -7); $ newstring: 5409els для первых 7 символов $newstring = substr($dynamicstring, 0, 7); $ newstring: 2490slk developper источник -1 последние 7 символов строки: $ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop" Keerthi источник
14 Более безопасные результаты для работы с многобайтовыми кодами символов, всегда используйте mb_substr вместо substr. Пример для utf-8: $str = 'Ne zaman seni düşünsem'; echo substr( $str, -7 ) . ' <strong>is not equal to</strong> ' . mb_substr( $str, -7, null, 'UTF-8') ; MERT DOĞAN источник
11 Было бы лучше проверить перед получением строки. $newstring = substr($dynamicstring, -7); если символы больше, чем 7, возвращают последние 7 символов, иначе возвращают предоставленную строку. или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7 $newstring = (strlen($dynamicstring)>7)?substr($dynamicstring, -7):"message"; вспомогательная документация Абдул Манан источник Я думаю, что остальная часть необходима, чтобы вернуть сообщение. Что-то вроде ввода неверных данных или .. Нери 1 Вероятно, это лучший ответ, единственное, что может сделать его лучше, это ссылка на руководство по php. Марк Карпентер-младший 2 Для простоты, если вы не хотите отправлять сообщение, попробуйте это $new_string = substr( $dynamicstring, -min( strlen( $dynamicstring ), 7 ) ); mariovials источник 0 за последние 7 символов $newstring = substr($dynamicstring, -7); $ newstring: 5409els для первых 7 символов $newstring = substr($dynamicstring, 0, 7); $ newstring: 2490slk developper источник -1 последние 7 символов строки: $ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop" Keerthi источник
2 Для простоты, если вы не хотите отправлять сообщение, попробуйте это $new_string = substr( $dynamicstring, -min( strlen( $dynamicstring ), 7 ) ); mariovials источник
0 за последние 7 символов $newstring = substr($dynamicstring, -7); $ newstring: 5409els для первых 7 символов $newstring = substr($dynamicstring, 0, 7); $ newstring: 2490slk developper источник
-1 последние 7 символов строки: $ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop" Keerthi источник
Ответы:
Используйте
substr()
с отрицательным числом для второго аргумента.Из документации php :
источник
хм .. как это?
источник
Более безопасные результаты для работы с многобайтовыми кодами символов, всегда используйте mb_substr вместо substr. Пример для utf-8:
источник
Было бы лучше проверить перед получением строки.
если символы больше, чем 7, возвращают последние 7 символов, иначе возвращают предоставленную строку.
или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7
вспомогательная документация
источник
Для простоты, если вы не хотите отправлять сообщение, попробуйте это
источник
за последние 7 символов
$ newstring: 5409els
для первых 7 символов
$ newstring: 2490slk
источник
последние 7 символов строки:
$ rest = substr ("abcdefghijklmnop", -7); // возвращает "jklmnop"
источник