2013-11-29 3 views
4

Я пытался засеять базы данных в своем проекте. Когда я это сделал, вставляются только поля «title» и «post», «Created_at» и «Update_at» не изменяются и отображаются как 0000-00-00 00:00:00. Я также пытался со временем() тоже. Он корректно работает в 'php artisan tink', но результаты в базе данных по-прежнему не изменяются.0000-00-00 00:00:00 в timestamp

<?php 

class QuestionsTableSeeder extends Seeder { 

    public function run() 
    { 

     DB::table('questions')->truncate(); 

     $questions = array(
      'title' => 'Simple Question Title', 
      'post' => 'Lorem ipsum dolor', 
      'created_at' => time() 
     ); 

     // Uncomment the below to run the seeder 
     DB::table('questions')->insert($questions); 
    } 

} 

ответ

3

Вы можете использовать new DateTime()! Надеюсь, что это «LL геп

4

с помощью

'created_at' => date('Y-m-d H:i:s', time()); 

форматировать значение, возвращаемое time() как MYSQL метки времени

+0

Прохладный! , Он работает как шарм –

0

ОО способ (с использованием DateTime)

$now = new DateTime(); 

$questions = array(
      'title' => 'Simple Question Title', 
      'post' => 'Lorem ipsum dolor', 
      'created_at' => $now->format('Y-m-d H:i:s'), 
     ); 
1

Обновление и вставка новых временных меток в задаче базы данных, с которой сталкиваются многие пользователи, и они хотят, чтобы вставить дату, а также обновить запись. Есть много способов сделать это, но мне нравится, как это делается самой базой данных. Как и в MySQL изменяя таблицу

ALTER TABLE `talbename` 
    ADD `updatedon` TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
    NOT NULL DEFAULT CURRENT_TIMESTAMP ; 

Это позволит создать новый столбец в базе данных и каждый раз, когда обновляется запись или вставлены временные метки будут регистрироваться себя. Нет, нужно делать что-то в PHP.

0

Eloquent также обрабатывает как временные метки автоматически. Код будет следующим:

public function run() 
    { 
     DB::table('questions')->truncate(); 

     Question::create(array(
      'title' => 'Sample Question Title', 
      'post' => 'Lorem ipsum dollar' 
     )); 

    } 
Смежные вопросы