Как скрыть числа в поле textarea - PullRequest
1 голос
/ 30 октября 2010

Я использую cakephp и хочу скрыть все числа, которые состоят из более чем шести цифр.

как то так

 $string = "My id number is 77765444 in Sales dept.";

 becomes 

 $string = "My id number is XXXXXXXX in Sales dept." 

Я ценю любую помощь.

Спасибо.

Ответы [ 2 ]

5 голосов
/ 30 октября 2010

Попробуйте, используя preg_replace_callback и анонимную функцию :

$string = preg_replace_callback('/\d{6,}/', function($match) { return str_repeat('X', strlen($match[0])); }, $string);

Анонимная функция используется для замены каждого вхождения из шести или более последовательных цифрна такую ​​же сумму X.Если ваша версия PHP не поддерживает анонимные функции (доступно с версии 5.3), используйте вместо них обычную функцию.

1 голос
/ 30 октября 2010
$string = preg_replace('/\d/', 'X', "My id number is 77765444 in Sales dept.");
...