2013-07-24 3 views
0

Я пытаюсь понять, что означают квадратные скобки при попытке засеять базу данных в Laravel. Если у меня есть таблица с двумя заголовками полей и телом, мне интересно, почему вместо массива() используются квадратные скобки. Используются ли квадратные скобки для краткой формы или для организации? кажется, что квадратные скобки не просто используются для семени базы данных.laravel php квадратные скобки определение

public function run() 
{ 
    $posts = [ 
     [ 'title' => 'My first post', 'body' => 'My post' ], 
     [ 'title' => 'My second post', 'body' => 'My post' ] 
    ]; 
    DB::table('posts')->insert($posts); 
} 
+0

См. Http://php.net/manual/en/language.types.array.php. «Начиная с PHP 5.4 вы также можете использовать синтаксис короткого массива, который заменяет array() на []." – Deinumite

ответ

2

Это то же самое, как:

public function run() 
{ 
    $posts = array(
     array('title' => 'My first post', 'body' => 'My post'), 
     array('title' => 'My second post', 'body' => 'My post') 
    ); 
    DB::table('posts')->insert($posts); 
} 

Это новый (> = PHP 5.4) короткий путь определения массива.

1

Что вы видите, это синтаксис короткого массива. Это было implemented 2 года назад и доступно для версий PHP => 5.4.

<?php 
$array = array(
    "foo" => "bar", 
    "bar" => "foo", 
); 

// as of PHP 5.4 
$array = [ 
    "foo" => "bar", 
    "bar" => "foo", 
]; //short syntax 
?> 

Для совместимости, я предлагаю использовать первый. Но оба функционально одинаковы.

См. Документацию по массивам here.

Если вы хотите получить дополнительную информацию, обратитесь к разделу RFC.

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

  • Нет связанных вопросов^_^