場景是:
在前台顯示一個Users表裡的tel欄位時,電話號碼的後4位用*來化替。
我使用的方法是:
class User extends Model
{
public function getTelAttribute () {
return substr($this->attributes['tel'], 0, 7) . '****';
}
}
如果這樣寫,一般的情況下是沒問題的。
但是,當使用者透過表單修改個人資訊時,input所顯示的電話是
例:1391234**
我想解決的是:
在使用讀取器(getAttribute)的情況下,如何在一定的條件下
一時取消到讀取器(getAttribute)的動作,從而達到顯示完整的電話號碼呢?
1. 做兩個
導出
Array
时隐藏一个,这样做有弊病,导出的JSON接口中,tel
都是**2. 運行時替換
不修改
tel
,但是在模板中显示时,用函数替换一下这样对导出
JSON
都沒影響,只是每處顯示的時候都需要用函數替換