La scène est :
Lors de l'affichage du champ tel dans un tableau Utilisateurs au premier plan, les 4 derniers chiffres du numéro de téléphone sont remplacés par *.
La méthode que j'utilise est :
class User extends Model
{
public function getTelAttribute () {
return substr($this->attributes['tel'], 0, 7) . '****';
}
}
Si vous l'écrivez comme ça, tout ira généralement bien.
Cependant, lorsque l'utilisateur modifie ses informations personnelles via le formulaire, le numéro de téléphone affiché en saisie est
Exemple : 1391234**
Ce que je veux résoudre, c'est :
Dans le cas de l'utilisation du lecteur (getAttribute), comment
annuler temporairement l'action sur le lecteur (getAttribute) sous certaines conditions, de manière à afficher le numéro de téléphone complet ?
1. Faites-en deux
Cachez-en un lors de l'exportation de
Array
Cela présente des inconvénients dans l'interface JSON exportée,tel
est tout **Array
时隐藏一个,这样做有弊病,导出的JSON接口中,tel
都是**2. 运行时替换
不修改
2. Remplacement de l'exécution🎜 🎜Ne modifiez pastel
,但是在模板中显示时,用函数替换一下这样对导出
JSON
. rrreeetel
, mais lors de son affichage dans le modèle, remplacez-le par une fonctionCela n'aura aucun effet sur l'export
JSON
, mais vous devez le faire. utilisez-le à chaque fois qu'il est affiché. Remplacement de la fonction🎜