Требуется заменить одну строку на другую в указанной части исходной строки. Например, перед выводом номера удостоверения личности необходимо скрыть его часть, кроме последних четырёх цифр.
Для этого можно использовать функцию substr_replace()
.
[Пример 1-14]
// $old_string — исходная строка
// $new_substring — новая строка
// $start — позиция начала замены
$new_string = substr_replace($old_string,$new_substring,$start);
// $length — длина заменяемой части
$new_string = substr_replace($old_string,$new_substring,$start,$length);
Функция substr_replace()
, если не указан параметр $length
, заменяет всю строку, начиная с позиции $start
. Если же параметр $length
указан, то будет заменена только указанная часть строки.
Пример:
print substr_replace('My pet is a blue dog.','fish.',12);
print substr_replace('My pet is a blue dog.','green',12,4);
Результат:
Если $credit_card
содержит номер кредитной карты, можно заменить все цифры, кроме четырёх последних, на «xxxx»:
$credit_card = '4111 1111 1111 1111';
print substr_replace($credit_card,'xxxx ',0,strlen($credit_card)-4);
Результат:
xxxx 1111
Если значение $start
отрицательное, замена начинается с конца строки и отсчитывается в обратном порядке $start
символов. Параметр $length
также может быть использован.
Пример:
print substr_replace('My pet is a blue dog.','fish.',-9);
print substr_replace('My pet is a blue dog.','green',-9,4);
Результат:
Если значения $start
и $length
равны нулю, новая строка будет вставлена в начало исходной.
Пример:
print substr_replace('My pet is a blue dog.','Title: ',0,0);
Результат:
Title: My pet is a blue dog.
Часто функция substr_replace()
используется для вывода только части длинной строки. В примере [1-15] выводится первые 25 символов сообщения, а при клике на ссылку открывается страница с полным текстом сообщения.
[Пример 1–15]
$r = mysql_query("SELECT id,message FROM messages WHERE id = $id") or die();
$ob = mysql_fetch_object($r);
printf('<a href="more-text.php?id=%d">%s</a>',
$ob->id, substr_replace($ob->message,' ...',25));
На странице more-text.php
можно получить полный текст сообщения по идентификатору и отобразить его.
Подробная информация о функции substr_replace()
доступна на сайте http://php.net/manual/zh/function.substr-replace.php.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )