it-roy-ru.com

Как я могу получить последние 7 символов строки PHP?

Как бы я взял последние 7 символов строки ниже?

Например:

$dynamicstring = "2490slkj409slk5409els";
$newstring = some_function($dynamicstring);
echo "The new string is: " . $newstring;

Который будет отображать:

The new string is: 5409els
230
Dave

Используйте substr() с отрицательным числом для второго аргумента.

$newstring = substr($dynamicstring, -7);

Из php docs :

string substr ( string $string , int $start [, int $length ] )

Если start отрицательное, возвращаемая строка будет начинаться с начального символа с конца строки.

509
Asaph

хм .. как это?

$newstring = substr($dynamicstring, -7);
70
Vitaly Muminov

Более безопасные результаты для работы с многобайтовыми символами, всегда используйте 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') ;

возврат ИСТИНА;

11
MERT DOĞAN

Было бы лучше проверить перед получением строки.

$newstring = substr($dynamicstring, -7);

если символы больше, чем 7, возвращают последние 7 символов, в противном случае возвращают предоставленную строку.

или сделайте это, если вам нужно вернуть сообщение или ошибку, если длина меньше 7

$newstring = (strlen($dynamicstring)>7)?substr($dynamicstring, -7):"message";

подстанция документации

8
Abdul Manan

Для простоты, если вы не хотите отправлять сообщение, попробуйте это

$ new_string = substr ($ dynamicstring, -min (strlen ($ dynamicstring), 7));

0
mariovials