
/**
* 转换时区
*
* @param $value
* @return string
*/
private function transTz($value = null): string
{
return now()->utc()->toDateTimeString();
}


update `table` set `deleted_at` = '2023-01-12 11:19:17' where `id` = 534
/**
* 设置删除时间
*
* @param $value
* @return void
*/
public function setDeletedAtAttribute($value)
{
$this->attributes['deleted_at'] = $value ? now()->utc()->toDateTimeString() : $value;
}
update `table` set `deleted_at` = '2023-01-12 16:05:00' where `id` = 531
$time = $this->freshTimestamp();
$time = Date::now('UTC');
update `table` set `deleted_at` = '2023-01-12 08:09:02' where `id` = 534
use Illuminate\Database\Eloquent\SoftDeletes;
class ThemeInstallation extends Model
{
use SoftDeletes;
/**
* Perform the actual delete query on this model instance.
*
* @return void
*/
protected function runSoftDelete()
{
$query = $this->setKeysForSaveQuery($this->newModelQuery());
$time = Date::now('UTC');
$columns = [$this->getDeletedAtColumn() => $this->fromDateTime($time)];
file_put_contents(storage_path() . '/logs/SoftDeletes.runSoftDelete-' . microtime(true) . '-' . mt_rand() . '.txt', print_r($time, true), FILE_APPEND | LOCK_EX);
$this->{$this->getDeletedAtColumn()} = $time;
if ($this->timestamps && ! is_null($this->getUpdatedAtColumn())) {
$this->{$this->getUpdatedAtColumn()} = $time;
$columns[$this->getUpdatedAtColumn()] = $this->fromDateTime($time);
}
$query->update($columns);
$this->syncOriginalAttributes(array_keys($columns));
}
}
<pre class="wp-block-syntaxhighlighter-code">
<?php
namespace App\Traits;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Facades\Date;
trait UtcSoftDeletes
{
use SoftDeletes;
/**
* Perform the actual delete query on this model instance.
*
* @return void
*/
protected function runSoftDelete()
{
$query = $this->setKeysForSaveQuery($this->newModelQuery());
$time = Date::now('UTC');
$columns = [$this->getDeletedAtColumn() => $this->fromDateTime($time)];
$this->{$this->getDeletedAtColumn()} = $time;
if ($this->timestamps && ! is_null($this->getUpdatedAtColumn())) {
$this->{$this->getUpdatedAtColumn()} = $time;
$columns[$this->getUpdatedAtColumn()] = $this->fromDateTime($time);
}
$query->update($columns);
$this->syncOriginalAttributes(array_keys($columns));
}
}
</pre>

PHP / Laravel / Yii2 老项目维护与长期技术支持
如果你的 PHP / Laravel / Yii2 项目已经上线,但遇到原开发离职、Bug 长期无人修复、接口不稳定、性能下降、代码难以接手等问题,可以联系我做一次远程技术排查。
适合以下情况:
✅ 老旧 PHP 系统无人维护
✅ Laravel / Yii2 项目 Bug 修复
✅ 后台管理系统小功能迭代
✅ RESTful API 接口排查
✅ MySQL / Redis / Nginx 性能问题
✅ 长期远程兼职维护
可先从一次小问题开始:
✅ 线上报错排查
✅ 接口异常分析
✅ 慢查询与性能瓶颈定位
✅ 代码结构初步评估
✅ 部署环境与日志检查
如需咨询,请联系我,并注明:PHP 维护咨询。
联系方式:
Telegram:@shuijingwan
微信:13980074657
邮箱:shuijingwanwq@gmail.com

发表回复