Вместо того чтобы делать необработанный запрос, почему бы не создать модель ...
Называйте это разговор, или что-то ...
И тогда вы можете просто сделать .. ..
$result = Conversation::create(array('user_one' => $currentId, 'user_two' => $toUserId, 'ip' => Request::getClientIp(), 'time' => $now))->id;
Который возвращает идентификатор ...
Или, если вы используете Laravel 4, вы можете использовать метод insertGetId ... В Laravel 3 его insert_get_id() Я считаю
$results = DB::table('pm_conversations')->insertGetId(
array('user_one' => $currentId, 'user_two' => $toUserId, 'ip' => Request::getClientIp(), 'time' => $now)
);
Этот метод требует, чтобы идентификатор таблицы будет Автоинкрементный, так что следите за что ...
последний метод, является то, что вы можете просто вернуть последний вставленный объект MySQL ....
Как так ...
$result = DB::connection('mysql')->pdo->lastInsertId();
так что, если вы решили, что последняя дорога ...
Это пойду ...
public static function createConversation($toUserId)
{
$now = date('Y-m-d H:i:s');
$currentId = Auth::user()->id;
$results = DB::table('pm_conversations')->insert(
array('user_one' => $currentId, 'user_two' => $toUserId, 'ip' => Request::getClientIp(), 'time' => $now)
);
$theid= DB::connection('mysql')->pdo->lastInsertId();
return $theid;
}
Я бы лично выбрать первый метод создания фактической модели. Таким образом, вы можете иметь объекты рассматриваемого предмета. Затем вместо того, чтобы создавать модель и просто сохранять() .... вы вызываете MyModel :: create(), и это вернет идентификатор последней модели.
DB :: getPdo() -> lastInsertId() – jrsalunga