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

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

например:

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

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

The new string is: 5409els

4 ответов


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

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

С php docs:

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

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


УМХ.. вот так?

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

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

retrun TRUE;


было бы лучше иметь чек, прежде чем получать строку.

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

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