再一次版本更新中,发现更新后项目出现了很多BUG,检查后发现是thinkphp的ORM库再新的版本中作出了改变,导致模型变量赋值后普通的方式取值无法获取到改变后的值。
$user = User::where("id",1)->find();
//改变手机号 假设查出手机号为1553334444
$user->mobile = substr_replace($mobile, '****', 5, 4);
//打印手机号
var_dump($user->mobile);//打印出的值是1553334444
//使用getData就能打印出改变后的值
var_dump($user->getData("mobile"));
如果想要不改变书写方式解决BUG就只能回退ORM的版本
我原来使用的是2.0.34,当前最新版本是2.0.39,改变composer.json中的版本直接更新composer即可
指定更新版本
composer update topthink/think-orm:2.0.34