Position actuelle: Accueil> Derniers articles> Comment utiliser MB_EREGI_REPLACE pour obtenir un traitement de désensibilisation en un clic des informations sensibles telles que le numéro d'identification et le numéro de téléphone mobile?

Comment utiliser MB_EREGI_REPLACE pour obtenir un traitement de désensibilisation en un clic des informations sensibles telles que le numéro d'identification et le numéro de téléphone mobile?

M66 2025-06-29

Dans le processus de développement réel, le traitement des informations sensibles aux utilisateurs (telles que le numéro d'identification, le numéro de téléphone mobile, etc.) est un lien de protection de la confidentialité très important. Nous espérons que lors de l'affichage de ces informations, un contenu sensible peut être désensibilisé pour éviter la divulgation de la confidentialité des utilisateurs. Cet article présentera comment utiliser la fonction MB_EREGI_REPLACE en PHP pour implémenter la désensibilisation en un clic.


Qu'est-ce que MB_EREGI_REPLACE ?

MB_EREGI_REPLACE est une fonction de chaîne multi -yte en PHP qui est utilisée pour effectuer un remplacement d'expression régulière insensible à la cas dans les chaînes. Il prend en charge le codage multi-octets tel que l'UTF-8, qui est très adapté à la gestion des personnages multi-octets tels que le chinois.


Idées de base de désensibilisation

Prenant l'exemple du numéro de téléphone mobile et du numéro d'identification, les méthodes courantes de désensibilisation sont:

  • Numéro de téléphone mobile: caché les quatre chiffres du milieu, par exemple, 13812345678 La désensibilisation est de 138 **** 5678

  • Numéro d'identification: masquer les 10 chiffres du milieu, par exemple, 110105199001011234 La désensibilisation est 1101 ************ 1234


Exemple de code

Voici un exemple de code PHP pour implémenter la désensibilisation à l'aide de MB_ERGI_REPLACE :

 <?php
// Numéro de téléphone mobile désensibilisé
function mask_mobile($mobile) {
    // Format du numéro de téléphone mobile correspondant,Remplacer le milieu4La position est****
    return mb_eregi_replace('(\d{3})\d{4}(\d{4})', '$1****$2', $mobile);
}

// Numéro d&#39;identification désensibilisé
function mask_idcard($idcard) {
    // Numéro d&#39;identification de correspondance,Remplacer le milieu10La position est**********
    return mb_eregi_replace('(\d{4})\d{10}(\d{4})', '$1**********$2', $idcard);
}

// test
$mobile = '13812345678';
$idcard = '110105199001011234';

echo "Numéro de téléphone mobile d&#39;origine:$mobile\n";
echo "Numéro de téléphone mobile désensibilisé:" . mask_mobile($mobile) . "\n";

echo "Numéro d&#39;identification d&#39;origine:$idcard\n";
echo "Numéro d&#39;identification désensibilisé:" . mask_idcard($idcard) . "\n";
?>

illustrer

  • (\ d {3}) et (\ d {4}) dans les expressions régulières représentent le regroupement de nombres avant et après la capture.

  • La pièce de remplacement utilise 1 $ et 2 $ pour référencer le groupe de capture, conservant ainsi les numéros de début et de fin et de remplacer le milieu par * .

  • MB_EREGI_REPLACE est insensible à la casse et prend en charge les caractères multi-octets, qui convient à la gestion de plusieurs texte codés.


Optimisation supplémentaire

Selon les besoins de l'entreprise, vous pouvez également effectuer un traitement similaire sur d'autres informations sensibles telles que le courrier électronique, le numéro de carte bancaire, etc., il suffit d'ajuster l'expression régulière.


Exemple de référence Lien

Pour plus de conseils de traitement des chaînes PHP, vous pouvez accéder aux ressources suivantes:

 $url = 'https://m66.net/php-string-functions.html';
echo "Veuillez visiter le tutoriel détaillé:$url";