Heim > Artikel > PHP-Framework > So geben Sie Felder in Laravel an
Laravel ist ein hervorragendes Webanwendungs-Framework, dessen flexible Struktur und umfangreicher Funktionsumfang es zur ersten Wahl vieler Entwickler machen. In Laravel bedeutet die Angabe von Feldern, dass beim Betrieb der Datenbank nur bestimmte Felder und nicht alle Felder ausgewählt werden. Dies ist in vielen Situationen nützlich, beispielsweise wenn Sie sich nur um einige Daten in der Tabelle kümmern und nicht alle Daten abfragen möchten, oder wenn die Abfrageergebnisse umfangreich sind und die Leistung verbessert werden muss.
In diesem Artikel stellen wir vor, wie Sie Felder in Laravel angeben, sodass Sie die Datenbank flexibler betreiben und die Leistung Ihrer Anwendung verbessern können.
select()
, um Felder anzugebenselect()
方法指定字段Laravel的查询构造器提供了一个select()
方法,可用于指定要选择的字段。该方法接受一个或多个参数,参数可以是一个字符串,包含要选择的字段名称的逗号分隔列表,也可以是多个字符串,每个字符串表示一个要选择的字段。以下是使用select()方法指定字段的示例代码:
$users = DB::table('users')->select('id', 'name', 'email')->get();
在上面的示例中,我们在select()
方法中传递了'id', 'name', 'email'
参数,表示只选择表中的这三个字段。get()
方法用于执行查询并返回查询结果。
$fillable
属性如果您使用的是Laravel的模型(Model),则可以使用模型的$fillable
属性来指定要允许进行批量赋值的字段。这样,当您调用模型的create()
或update()
方法时,只有在$fillable
属性中指定的字段才会被赋值。以下是使用$fillable
属性指定字段的示例代码:
class User extends Model { protected $fillable = ['name', 'email', 'password']; }
在上面的示例中,我们使用$fillable
属性指定了三个字段:name
、email
和password
。如果您调用模型的create()
方法并传递这三个字段的值,这些值将自动保存到数据库。
$guarded
属性与$fillable
属性相反的是,Laravel的模型还提供了一个名为$guarded
的属性,可以用于指定不允许通过批量赋值进行更改的字段。如果您指定了 $guarded
属性,则在调用模型的 create()
或 update()
方法进行批量赋值时,不包含 $guarded
属性中指定的字段。以下是使用 $guarded
属性指定字段的示例代码:
class User extends Model { protected $guarded = ['id', 'created_at', 'updated_at']; }
在这个例子中,我们使用 $guarded
属性指定了 id
、created_at
和 updated_at
字段,这些字段在进行批量赋值时将被排除。
pluck()
方法指定单个字段如果您只需要查询表中单个字段的值,可以使用查询构建器的pluck()
方法。该方法接受一个参数,参数表示您要查询的字段名称。以下是使用pluck()
方法指定单个字段的示例代码:
$name = DB::table('users')->where('id', 1)->pluck('name');
在上面的示例中,我们使用where()
方法过滤出id
等于1的记录,并使用pluck()
方法选择name
Der Abfrage-Builder von Laravel bietet eine Methode select()
, die zum Angeben verwendet werden kann die gewünschten Felder. Diese Methode akzeptiert einen oder mehrere Parameter, bei denen es sich um eine Zeichenfolge handeln kann, die eine durch Kommas getrennte Liste der auszuwählenden Feldnamen enthält, oder um mehrere Zeichenfolgen, wobei jede Zeichenfolge ein auszuwählendes Feld darstellt. Unten ist der Beispielcode zum Angeben von Feldern mit der Methode select():
Im obigen Beispiel haben wir 'id', 'name', ' in der E-Mail der Methode <code>select()
übergeben ' Parameter, der angibt, dass nur diese drei Felder in der Tabelle ausgewählt sind. Die Methode get()
wird verwendet, um Abfragen auszuführen und Abfrageergebnisse zurückzugeben.
Verwenden Sie das Attribut $fillable
des Modells
des Modells verwenden $fillable
-Attribut, um die Felder anzugeben, die eine Massenzuweisung ermöglichen sollen. Wenn Sie auf diese Weise die Methode create()
oder update()
des Modells aufrufen, werden nur die im Attribut $fillable
angegebenen Felder zugewiesen . Hier ist der Beispielcode zum Angeben von Feldern mithilfe des Attributs $fillable
: 🎜rrreee🎜Im obigen Beispiel haben wir drei Felder mithilfe des Attributs $fillable
angegeben: Name
, E-Mail
und Passwort
. Wenn Sie die Methode create()
des Modells aufrufen und die Werte dieser drei Felder übergeben, werden diese Werte automatisch in der Datenbank gespeichert. 🎜$guarded
des Modells$fillable
, Laravels Modell An Es wird auch ein Attribut namens $guarded
bereitgestellt, mit dem Felder angegeben werden können, die nicht durch Massenzuweisung geändert werden dürfen. Wenn Sie das Attribut $guarded
angeben, wenn Sie die Methode create()
oder update()
des Modells für die Stapelzuweisung aufrufen, schließen Sie $guarded angegeben ist. Im Folgenden finden Sie einen Beispielcode für die Angabe eines Felds mithilfe des Attributs $guarded
: 🎜rrreee🎜In diesem Beispiel verwenden wir das Attribut $guarded
, um die id anzugeben
, created_at
und updated_at
Felder, diese Felder werden bei der Massenzuweisung ausgeschlossen. 🎜pluck()
, um ein einzelnes Feld anzugebenpluck()
des Implementierers verwenden. Diese Methode akzeptiert einen Parameter, der den Namen des Feldes darstellt, das Sie abfragen möchten. Hier ist der Beispielcode zum Angeben eines einzelnen Felds mit der Methode pluck()
: 🎜rrreee🎜 Im obigen Beispiel verwenden wir die Methode where()
, um das herauszufiltern id entspricht 1 Datensatz und verwendet die Methode <code>pluck()
, um den Wert des Felds name
auszuwählen. Diese Abfrage gibt eine Zeichenfolge zurück, die den Wert des angegebenen Felds enthält. 🎜🎜Zusammenfassung🎜🎜Die oben genannten sind die vier Methoden zum Spezifizieren von Feldern in Laravel. Mit den oben genannten Methoden können Sie die Datenbank flexibler betreiben und die Anwendungsleistung verbessern. Unabhängig davon, für welche Methode Sie sich entscheiden, empfiehlt es sich bei der Abfrage großer Datenmengen, nur die Felder abzufragen, die Sie benötigen, und kann das Datenübertragungsvolumen und die Ausführungszeit der Abfrage erheblich reduzieren. 🎜Das obige ist der detaillierte Inhalt vonSo geben Sie Felder in Laravel an. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!