- array_map: documentation ( source)
- mb_split: documentation ( source)
- implode: documentation ( source)
- array_filter: documentation ( source)
- mb_strtolower: documentation ( source)
- mb_internal_encoding: documentation ( source)
<?php
mb_internal_encoding('UTF-8');
$text = <<<TEXT
Павел
Дуров
fsdf sdf sdf
TEXT;
$filter = '';
$filter = mb_strtolower($filter);
$parts = mb_split('[\x00-\x20]+', $filter);
$parts = array_map('trim', $parts);
$parts = array_filter($parts);
$parts = array_map('preg_quote', $parts);
$filter = implode('.*', $parts);
echo "~{$filter}~uis";