/**
* 数据库测试
* @RequestMapping(route="db", method={RequestMethod::GET, RequestMethod::POST})
*/
public function db(){
$userObj=User::findById(1)->getResult(User::class);
$resultArray=$userObj->toArray();
//update
$userObj->setName("update");
$userUpdateResult=$userObj->update()->getResult();
$user = new User();
$user->setName('clive2');
$user->setSex(1);
$user->setDesc('this my desc');
$user->setAge(mt_rand(1, 100));
$userSaveResult = $user->save()->getResult();
$user->setId($userSaveResult);
$deleteResult=$user ->delete()->getResult();
return compact("resultArray",'userUpdateResult',"userSaveResult",'deleteResult','id');
}
// paste output here
{"msg":"Return value of Swoft\\Db\\QueryBuilder::getConnection() must be an instance of Swoft\\Db\\AbstractDbConnection, null returned","file":"\/var\/www\/swoft\/vendor\/swoft\/db\/src\/QueryBuilder.php","line":855,"code":0}
第一次访问的时候,可以update,第二次更新的时候会比较字段是否需要更新,如果不用更新的话,就会报错
解决方式就是 返回类型 加个?号,但是php 7.1 才支持nullable类型,你们看怎么处理吧.
/**
* @return \Swoft\Db\AbstractDbConnection
*/
public function getConnection(): ?\Swoft\Db\AbstractDbConnection
{
return $this->connection;
}
php --ri swoole
)php -v
)Details