Maison > Questions et réponses > le corps du texte
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 ?
習慣沉默2017-05-16 13:00:48
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
都是**
protected $hidden = [
'tel_original'
];
function getTelAttribute() {
return substr($this->attributes['tel'], 0, 7) . '****');
}
function getTelOriginalAttribute() {
return $this->attributes['tel'];
}
不修改tel
,但是在模板中显示时,用函数替换一下
这样对导出JSON
.
rrreee
tel
, mais lors de son affichage dans le modèle, remplacez-le par une fonctionJSON
, mais vous devez le faire. utilisez-le à chaque fois qu'il est affiché. Remplacement de la fonction🎜