mirror of
https://github.com/cedar2025/Xboard.git
synced 2025-01-22 10:38:14 -05:00
fix: 修复当 server_token 为长数字时,后台会转化成科学计数法,后端验证失败
This commit is contained in:
parent
f72df9df27
commit
09fb03a1ce
@ -7,25 +7,31 @@ use Illuminate\Database\Eloquent\Model;
|
|||||||
class Setting extends Model
|
class Setting extends Model
|
||||||
{
|
{
|
||||||
protected $table = 'v2_settings';
|
protected $table = 'v2_settings';
|
||||||
protected $guarded = [];
|
protected $guarded = [];
|
||||||
|
protected $casts = [
|
||||||
|
'key' => 'string',
|
||||||
|
'value' => 'string',
|
||||||
|
];
|
||||||
|
|
||||||
public function getValueAttribute($value)
|
public function getValueAttribute($value)
|
||||||
{
|
{
|
||||||
if ($value === null) {
|
if ($value === null) {
|
||||||
// 如果值为 null,你可能想要处理这种情况,例如返回一个默认值
|
return null;
|
||||||
return null; // 或者返回你期望的默认值
|
|
||||||
}
|
}
|
||||||
if (!is_string($value)) {
|
|
||||||
|
if (is_array($value)) {
|
||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
|
|
||||||
$decodedValue = json_decode($value, true);
|
|
||||||
|
|
||||||
|
if (is_numeric($value) && !preg_match('/[^\d.]/', $value)) {
|
||||||
|
return $value;
|
||||||
|
}
|
||||||
|
|
||||||
|
$decodedValue = json_decode($value, true);
|
||||||
if (json_last_error() === JSON_ERROR_NONE) {
|
if (json_last_error() === JSON_ERROR_NONE) {
|
||||||
return $decodedValue;
|
return $decodedValue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 如果不是有效的 JSON 数据,则保持为字符串
|
|
||||||
return $value;
|
return $value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user