Maison titres Bases du didacticiel Laravel et comment faire fonctionner la base de données

Bases du didacticiel Laravel et comment faire fonctionner la base de données

Jul 10, 2017 am 11:51 AM
laravel 入门 如何

En tant que framework PHP le plus élégant, Laravel a longtemps été convoité par de nombreux amis qui apprennent PHP. Partons de zéro et vous apprenons comment installer et utiliser ses fonctions de base, ainsi que les opérations de base de données. Aujourd'hui, notre site Web php chinois vous apportera un peu d'apprentissage et de pratique.

Vous pouvez apprendre le didacticiel vidéo fourni par le site Web chinois php :

1 Apprendre Laravel facilement - Les bases<.>

Liens connexes : http://www.php.cn/course/282.html

2.

Apprenez facilement Laravel - Tutoriel vidéo avancé

Liens connexes : http://www.php.cn/course /402.html

Commençons à apprendre et à utiliser le framework Laravel !

Installation

Le framework Laravel utilise Composer pour effectuer l'installation et la gestion des dépendances. Si vous ne l'avez pas encore installé, commencez à installer Composer maintenant.

Après avoir installé Composer, vous pouvez installer Laravel via la ligne de commande en utilisant la commande suivante :

composer create-project laravel/laravel your-project-name

Ou, vous pouvez l'installer à partir du téléchargement de Github Warehouse. Ensuite, après avoir installé Composer, exécutez la commande composer install dans le répertoire racine du projet. Cette commande téléchargera et installera les composants dépendants du framework.

Autorisation d'écriture

Structure du répertoire

Après avoir installé le framework, vous devez vous familiariser avec lui La structure des répertoires du projet. Le dossier de l'application contient des répertoires tels que des vues, des contrôleurs et des modèles. La plupart du code du programme sera stocké dans ces répertoires. Vous pouvez également vérifier certains éléments de configuration dans le dossier app/config.

Routage

Nous commençons à créer notre premier itinéraire. À Laravel, le moyen le plus simple d'effectuer un itinéraire consiste à utiliser des fermetures. Ouvrez le fichier app/routes.php et ajoutez le code suivant :

Route::get(&#39;users&#39;, function()
{
    return &#39;Users!&#39;;
});
Copier après la connexion
Maintenant, lorsque vous tapez /users dans votre navigateur Web, vous devriez voir la sortie Utilisateurs ! Génial! Votre premier itinéraire a été créé.


Les itinéraires peuvent également être attribués à des classes de contrôleurs. Par exemple :

Créer une vue

Ensuite, nous devons créer une vue pour afficher nos données utilisateur. Les vues sont stockées dans le dossier app/views sous forme de code HTML. Nous placerons deux fichiers de vue dans ce dossier : layout.blade.php et users.blade.php. Commençons par créer le fichier layout.blade.php :

<html>
    <body>
        <h1>Laravel Quickstart</h1>
                @yield(&#39;content&#39;)
    </body>
</html>
Copier après la connexion
Ensuite, nous créons la vue users.blade.php :

@extends(&#39;layout&#39;)
@section(&#39;content&#39;)    
Users!
@stop
Copier après la connexion
La syntaxe ici peut vous sembler étrange . Parce que nous utilisons le système de modèles de Laravel : Blade. Blade est très rapide car il n'utilise qu'une petite quantité d'

expressions régulières à compiler en code PHP brut pour vos modèles. Blade fournit des fonctionnalités puissantes, telles que l'héritage de modèles, ainsi que certains sucres de syntaxe de structure de contrôle PHP courants, tels que if et for. Consultez la documentation Blade pour en savoir plus.

Maintenant que nous avons notre point de vue, revenons à la route /users. Nous utilisons plutôt une vue pour renvoyer les utilisateurs ! :

Route::get(&#39;users&#39;, function()
{
    return View::make(&#39;users&#39;);
});
Copier après la connexion
Magnifique ! Vous avez maintenant créé avec succès une vue qui hérite de la mise en page. Commençons ensuite par la couche base de données.

Créer une migration

Pour créer la table devant contenir nos données, nous utiliserons le système de migration Laravel. Les migrations décrivent les modifications apportées à une base de données, ce qui facilite leur partage avec les membres de l'équipe.

Tout d'abord, nous configurons la connexion à la base de données. Vous pouvez configurer toutes les informations de connexion à la base de données dans le fichier app/config/database.php. Par défaut, Laravel est configuré pour utiliser SQLite et une base de données SQLite est stockée dans le répertoire app/database. Vous pouvez modifier l'option du pilote de la base de données

fichier de configuration en mysql et configurer les informations de connexion mysql.

Ensuite, pour créer la migration, nous utiliserons l'Artisan CLI. Dans le répertoire racine du projet, exécutez la commande suivante dans le terminal :

php artisan migrate:make create_users_table
Copier après la connexion
Ensuite, localisez les fichiers de migration générés dans le répertoire app/database/migrations. Ce fichier contient une classe avec deux méthodes : up et down. Dans la méthode up, vous nommez la modification apportée à la table de base de données et dans la méthode down, vous la supprimez simplement.

Définissons la migration comme suit :

public function up()
{
    Schema::create(&#39;users&#39;, function($table)
    {
        $table->increments(&#39;id&#39;);
        $table->string(&#39;email&#39;)->unique();
        $table->string(&#39;name&#39;);
        $table->timestamps();
    });
}
public function down()
{
    Schema::drop(&#39;users&#39;);
}
Copier après la connexion
Ensuite, nous exécutons la commande migrate en utilisant le terminal dans le répertoire racine du projet pour effectuer la migration :

php artisan migrate
Copier après la connexion
Si vous souhaitez annuler une migration, vous pouvez exécuter la commande migrate:rollback. Maintenant que nous avons notre table de base de données, ajoutons quelques données !

ORM éloquent

Laravel 提供非常棒的 ORM:Eloquent。如果你使用过 Ruby on Rails 框架,你会发现 Eloquent 很相似,因为它遵循数据库交互的 ActiveRecord ORM 风格。

首先,让我们来定义个模型。ELoquent 模型可以用来查询相关数据表,以及表内的某一行。别着急,我们很快会谈及!模型通常存放在 app/models 目录。让我们在该目录定义个 User.php 模型,如:

class User extends Eloquent {}
Copier après la connexion

注意我们并没有告诉 Eloquent 使用哪个表。Eloquent 有多种约定, 一个是使用模型的复数形式作为模型的数据库表。非常方便!

使用你喜欢的数据库管理工具,插入几行数据到 users 表,我们将使用 Eloquent 取得它们并传递到视图中。

现在我们修改我们 /users 路由如下:

Route::get(&#39;users&#39;, function()
{
    $users = User::all();
    return View::make(&#39;users&#39;)->with(&#39;users&#39;, $users);
});
Copier après la connexion

让我们来看看该路由。首先,User 模型的 all 方法将会从 users 表中取得所有记录。接下来,我们通过 with 方法将这些记录传递到视图。with 方法接受一个键和一个值,那么该值就可以在视图中使用了。

激动啊。现在我们准备将用户显示在我们视图!

显示数据

现在我们视图中已经可以访问 users 类,我们可以如下显示它们:


@extends(&#39;layout&#39;)
@section(&#39;content&#39;)
    @foreach($users as $user)
        <p>{{ $user->name }}</p>
    @endforeach
@stop
Copier après la connexion

你可以发现没有找到 echo 语句。当使用 Blade 时,你可以使用两个花括号来输出数据。非常简单,你现在应该可以通过 /users 路由来查看到用户姓名作为响应输出。

下面来介绍一下如何操作数据库:

一、读/写连接

有时您可能希望使用一个SELECT语句的数据库连接,,另一个用于插入、更新和删除语句。Laravel使这微风,将始终使用正确的连接是否使用原始查询,查询生成器或雄辩的ORM。

二、运行查询

一旦你已经配置了数据库连接,你可以使用DB运行查询类。

运行一个Select查询

$results = DB::select(&#39;select * from users where id = ?&#39;, array(1));
Copier après la connexion

结果的选择方法总是返回一个数组。

运行一个Insert语句

DB::insert(&#39;insert into users (id, name) values (?, ?)&#39;, array(1, &#39;Dayle&#39;));
Copier après la connexion

运行一个更新语句

DB::update(&#39;update users set votes = 100 where name = ?&#39;, array(&#39;John&#39;));
Copier après la connexion

运行一个Delete语句

DB::delete(&#39;delete from users&#39;);
Copier après la connexion

注意:update和delete语句返回的行数的影响操作。

运行一个通用声明

DB::statement(&#39;drop table users&#39;);
Copier après la connexion

查询事件监听

你可以查询事件监听使用DB::听方法:

DB::listen(function($sql, $bindings, $time){ //});
Copier après la connexion

三、数据库事务

  运行在一个数据库事务的一组操作,您可以使用事务方法:

 DB::transaction(function(){ DB::table(&#39;users&#39;)->update(array(&#39;votes&#39; => 1)); DB::table(&#39;posts&#39;)->delete();});
Copier après la connexion

注意:在事务抛出的任何异常关闭将导致自动事务将回滚

有时你可能需要开始一个事务:

DB::beginTransaction();
Copier après la connexion

你可以通过回滚事务回滚方法:

DB::rollback();
Copier après la connexion

最后,您可以通过提交方法:提交一个事务

DB::commit();
Copier après la connexion

四、访问连接

当使用多个连接,你可以访问它们通过DB::连接方法:

$users = DB::connection(&#39;foo&#39;)->select(...);
Copier après la connexion

你也可以访问原始的、潜在的PDO实例:

$pdo = DB::connection()->getPdo();
Copier après la connexion

有时你可能需要重新连接到一个给定的数据库:

DB::reconnect(&#39;foo&#39;);
Copier après la connexion

如果你需要断开从给定的数据库将超过底层PDO实例'smax_connections限制,使用断开连接方法:

DB::disconnect(&#39;foo&#39;);
Copier après la connexion

五、查询日志

默认情况下,Laravel日志保存在内存的所有查询运行当前的请求。然而,在某些情况下,例如当插入的行数,这可能会导致应用程序使用多余的内存。禁用日志,你可以使用disableQueryLog方法:

DB::connection()->disableQueryLog();
Copier après la connexion

o得到一组执行的查询,您可以使用getQueryLog方法:

$queries = DB::getQueryLog();
Copier après la connexion


相关推荐:

1. 云服务器上部署Laravel的实例教程

2. Laravel学习-数据库操作和查询构造器的示例代码分享

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Générez du PPT en un seul clic ! Kimi : Que les « travailleurs migrants PPT » deviennent d'abord populaires Générez du PPT en un seul clic ! Kimi : Que les « travailleurs migrants PPT » deviennent d'abord populaires Aug 01, 2024 pm 03:28 PM

Kimi : En une seule phrase, un PPT est prêt en seulement dix secondes. PPT est tellement ennuyeux ! Pour tenir une réunion, vous devez avoir un PPT ; pour rédiger un rapport hebdomadaire, vous devez avoir un PPT ; pour solliciter des investissements, vous devez présenter un PPT ; même pour accuser quelqu'un de tricherie, vous devez envoyer un PPT ; L'université ressemble plus à une spécialisation PPT. Vous regardez le PPT en classe et faites le PPT après les cours. Peut-être que lorsque Dennis Austin a inventé le PPT il y a 37 ans, il ne s'attendait pas à ce qu'un jour le PPT devienne aussi répandu. Parler de notre dure expérience de création de PPT nous fait monter les larmes aux yeux. "Il m'a fallu trois mois pour réaliser un PPT de plus de 20 pages, et je l'ai révisé des dizaines de fois. J'avais envie de vomir quand j'ai vu le PPT." "À mon apogée, je faisais cinq PPT par jour, et même ma respiration." était PPT." Si vous avez une réunion impromptue, vous devriez le faire

Tous les prix CVPR 2024 annoncés ! Près de 10 000 personnes ont assisté à la conférence hors ligne et un chercheur chinois de Google a remporté le prix du meilleur article. Tous les prix CVPR 2024 annoncés ! Près de 10 000 personnes ont assisté à la conférence hors ligne et un chercheur chinois de Google a remporté le prix du meilleur article. Jun 20, 2024 pm 05:43 PM

Tôt le matin du 20 juin, heure de Pékin, CVPR2024, la plus grande conférence internationale sur la vision par ordinateur qui s'est tenue à Seattle, a officiellement annoncé le meilleur article et d'autres récompenses. Cette année, un total de 10 articles ont remporté des prix, dont 2 meilleurs articles et 2 meilleurs articles étudiants. De plus, il y a eu 2 nominations pour les meilleurs articles et 4 nominations pour les meilleurs articles étudiants. La conférence la plus importante dans le domaine de la vision par ordinateur (CV) est la CVPR, qui attire chaque année un grand nombre d'instituts de recherche et d'universités. Selon les statistiques, un total de 11 532 articles ont été soumis cette année, dont 2 719 ont été acceptés, avec un taux d'acceptation de 23,6 %. Selon l'analyse statistique des données CVPR2024 du Georgia Institute of Technology, du point de vue des sujets de recherche, le plus grand nombre d'articles est la synthèse et la génération d'images et de vidéos (Imageandvideosyn

Du bare metal au grand modèle avec 70 milliards de paramètres, voici un tutoriel et des scripts prêts à l'emploi Du bare metal au grand modèle avec 70 milliards de paramètres, voici un tutoriel et des scripts prêts à l'emploi Jul 24, 2024 pm 08:13 PM

Nous savons que le LLM est formé sur des clusters informatiques à grande échelle utilisant des données massives. Ce site a présenté de nombreuses méthodes et technologies utilisées pour aider et améliorer le processus de formation LLM. Aujourd'hui, ce que nous souhaitons partager est un article qui approfondit la technologie sous-jacente et présente comment transformer un ensemble de « bare metals » sans même un système d'exploitation en un cluster informatique pour la formation LLM. Cet article provient d'Imbue, une startup d'IA qui s'efforce d'atteindre une intelligence générale en comprenant comment les machines pensent. Bien sûr, transformer un tas de « bare metal » sans système d'exploitation en un cluster informatique pour la formation LLM n'est pas un processus facile, plein d'exploration et d'essais et d'erreurs, mais Imbue a finalement réussi à former un LLM avec 70 milliards de paramètres et dans. le processus s'accumule

L'IA utilisée | L'IA a créé un vlog sur la vie d'une fille vivant seule, qui a reçu des dizaines de milliers de likes en 3 jours L'IA utilisée | L'IA a créé un vlog sur la vie d'une fille vivant seule, qui a reçu des dizaines de milliers de likes en 3 jours Aug 07, 2024 pm 10:53 PM

Rédacteur du Machine Power Report : Yang Wen La vague d’intelligence artificielle représentée par les grands modèles et l’AIGC a discrètement changé notre façon de vivre et de travailler, mais la plupart des gens ne savent toujours pas comment l’utiliser. C'est pourquoi nous avons lancé la rubrique « AI in Use » pour présenter en détail comment utiliser l'IA à travers des cas d'utilisation de l'intelligence artificielle intuitifs, intéressants et concis et stimuler la réflexion de chacun. Nous invitons également les lecteurs à soumettre des cas d'utilisation innovants et pratiques. Lien vidéo : https://mp.weixin.qq.com/s/2hX_i7li3RqdE4u016yGhQ Récemment, le vlog de la vie d'une fille vivant seule est devenu populaire sur Xiaohongshu. Une animation de style illustration, associée à quelques mots de guérison, peut être facilement récupérée en quelques jours seulement.

Compte à rebours des 12 points faibles de RAG, l'architecte senior de NVIDIA enseigne les solutions Compte à rebours des 12 points faibles de RAG, l'architecte senior de NVIDIA enseigne les solutions Jul 11, 2024 pm 01:53 PM

La génération augmentée par récupération (RAG) est une technique qui utilise la récupération pour améliorer les modèles de langage. Plus précisément, avant qu'un modèle de langage ne génère une réponse, il récupère les informations pertinentes à partir d'une vaste base de données de documents, puis utilise ces informations pour guider le processus de génération. Cette technologie peut considérablement améliorer l'exactitude et la pertinence du contenu, atténuer efficacement le problème des hallucinations, augmenter la vitesse de mise à jour des connaissances et améliorer la traçabilité de la génération de contenu. RAG est sans aucun doute l’un des domaines de recherche les plus passionnants en matière d’intelligence artificielle. Pour plus de détails sur RAG, veuillez vous référer à l'article de la rubrique de ce site "Quelles sont les nouveautés de RAG, spécialisée dans le rattrapage des défauts des grands modèles ?" Cette revue l'explique clairement. Mais RAG n'est pas parfait et les utilisateurs rencontrent souvent des « problèmes » lorsqu'ils l'utilisent. Récemment, la solution avancée d'IA générative de NVIDIA

Comparaison des dernières versions de Laravel et CodeIgniter Comparaison des dernières versions de Laravel et CodeIgniter Jun 05, 2024 pm 05:29 PM

Les dernières versions de Laravel 9 et CodeIgniter 4 fournissent des fonctionnalités et des améliorations mises à jour. Laravel9 adopte l'architecture MVC et fournit des fonctions telles que la migration de bases de données, l'authentification et le moteur de modèles. CodeIgniter4 utilise l'architecture HMVC pour fournir le routage, l'ORM et la mise en cache. En termes de performances, le modèle de conception basé sur le fournisseur de services de Laravel9 et le framework léger de CodeIgniter4 lui confèrent d'excellentes performances. Dans les applications pratiques, Laravel9 convient aux projets complexes qui nécessitent de la flexibilité et des fonctions puissantes, tandis que CodeIgniter4 convient au développement rapide et aux petites applications.

Un autre joueur de niveau Sora arrive dans la rue ! Nous l'avons comparé à Sora et Keling. Un autre joueur de niveau Sora arrive dans la rue ! Nous l'avons comparé à Sora et Keling. Aug 02, 2024 am 10:19 AM

Lorsque Sora n'est pas parvenu à se manifester, les adversaires d'OpenAI ont utilisé leurs armes pour détruire les rues. Si Sora n'est pas ouvert à l'utilisation, il sera vraiment volé ! Aujourd'hui, la startup de San Francisco, LumaAI, a joué un atout et a lancé une nouvelle génération de modèle de génération vidéo IA DreamMachine. Gratuit et accessible à tous. Selon les rapports, le modèle peut générer des vidéos réalistes de haute qualité basées sur de simples descriptions textuelles, avec des effets comparables à ceux de Sora. Dès l’annonce de la nouvelle, un grand nombre d’utilisateurs se sont rassemblés sur le site officiel pour l’essayer. Bien que les responsables affirment que le modèle peut générer une vidéo de 120 images en seulement deux minutes, de nombreux utilisateurs attendent depuis des heures sur le site officiel en raison d'une augmentation des visites. BarkleyDai, responsable de la croissance des produits chez Luma, a dû commenter Discord

Laravel - Commandes artisanales Laravel - Commandes artisanales Aug 27, 2024 am 10:51 AM

Laravel - Artisan Commands - Laravel 5.7 est livré avec une nouvelle façon de traiter et de tester de nouvelles commandes. Il inclut une nouvelle fonctionnalité de test des commandes artisanales et la démonstration est mentionnée ci-dessous ?