一天的美好时光!
我的主人项目已经完成了一项任务,即开发移动应用程序而不使用任何可用的框架(我的意思是Symfony / Laravel / Phalcon等)。
由于我曾经和Laravel工作过很多,所以我一直试图在我自己的#34;框架中重新创建Laravel中的一些方法。
然而,我在使用PDO时遇到了一个非常奇怪的问题 这是我想要做的:
User::create([]);
方法创建用户(是的,我重新创建了模型系统)。 User::where('name', 'User Name')->orWhere('name', 'User Name')->first()->toArray()
链工作正常(查询不是"变形")str_replace
执行之前将其转储)以下是create(array $parameters)
方法:
try {
$reference = (new static);
$sqlStatement = sprintf('INSERT INTO %s (%s) VALUES (', $reference->table, implode(', ', $reference->fillable));
foreach ($parameters as $key => $value) {
$reference->$key = $value;
$sqlStatement .= ':' . $key . ', ';
}
$sqlStatement = rtrim($sqlStatement, ', ') . ')';
$statement = $reference->connection->prepare($sqlStatement);
foreach ($parameters as $key => $value)
$statement->bindParam(':' . $key, $value);
$statement->execute();
return $reference;
} catch (\PDOException $exception) {
dd($exception);
}
我真的不知道这里有什么问题,因为PHP和SQL部分看起来很好。 任何帮助或想法都非常感谢!