Si bien el enfoque más común es el uso Model::select, puede causar la representación de todos los atributos definidos con métodos de acceso dentro de las clases de modelo. Entonces, si define un atributo en su modelo:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
/**
* Get the user's first name.
*
* @param string $value
* @return string
*/
public function getFirstNameAttribute($value)
{
return ucfirst($value);
}
}
Y luego usa:
TableName::select('username')->where('id', 1)->get();
Producirá la colección con ambos first_namey username, en lugar de solo el nombre de usuario.
Mejor uso pluck(), solo u opcionalmente en combinación con select, si desea columnas específicas.
TableName::select('username')->where('id', 1)->pluck('username');
o
TableName::where('id', 1)->pluck('username'); // eso devolvería la colección que consta solo de usernamevalores
Además, opcionalmente, use ->toArray()para convertir el objeto de colección en una matriz.