updateorcreate sirve que para espaƱol laravel eloquent laravel-5.2

laravel - sirve - Eloquent obtiene solo una columna como matriz



pluck laravel para que sirve (5)

Creo que puedes lograrlo usando el siguiente código

Model::get([''ColumnName''])->toArray();

¿Cómo obtener solo una columna como una matriz dimensional en laravel 5.2 usando elocuente?

Yo he tratado:

$array = Word_relation::select(''word_two'')->where(''word_one'', $word_id)->get()->toArray();

pero este lo da como una matriz de 2 dimensiones como:

array(2) { [0]=> array(1) { ["word_one"]=> int(2) } [1]=> array(1) { ["word_one"]=> int(3) } }

pero quiero obtenerlo como:

array(2) { [0]=>2 [1]=>3 }


Eso se puede hacer en resumen como:

Model::pluck(''column'')

donde modelo es el modelo, como modelo de User y columna como nombre de columna como id

si lo haces

User::pluck(''id'') // [1,2,3, ...]

y, por supuesto, puede tener otras cláusulas como cláusula where antes de arrancar


Me encontré con esta pregunta y pensé que aclararía que el método lists () de un objeto constructor elocuente se depreció en Laravel 5.2 y se reemplazó con pluck ().

// <= Laravel 5.1 Word_relation::where(''word_one'', $word_id)->lists(''word_one'')->toArray(); // >= Laravel 5.2 Word_relation::where(''word_one'', $word_id)->pluck(''word_one'')->toArray();

Estos métodos también se pueden invocar en una Colección, por ejemplo

// <= Laravel 5.1 $collection = Word_relation::where(''word_one'', $word_id)->get(); $array = $collection->lists(''word_one''); // >= Laravel 5.2 $collection = Word_relation::where(''word_one'', $word_id)->get(); $array = $collection->pluck(''word_one'');


Puedes usar el método de pluck :

Word_relation::where(''word_one'', $word_id)->pluck(''word_two'')->toArray();

Para obtener más información sobre qué métodos están disponibles para usar con la colección, puede consultar la Documentación de Laravel .


Si recibe varias entradas, el método correcto se llama lists .

Word_relation::select(''word_two'')->where(''word_one'', $word_id)->lists(''word_one'')->toArray();