目录
一、 .env 文件
二、模型操作
1. DB 类
2.  查询构建器
3. Eloquent ORM
首页 后端开发 php教程 Laravel 5.2中关于.env文件与模型操作的实例分享

Laravel 5.2中关于.env文件与模型操作的实例分享

Sep 11, 2017 am 10:18 AM
laravel 模型

一、 .env 文件

.env 文件是应用的环境配置文件,在配置应用参数、数据库连接、缓存处理时都会使用这个文件。


// 应用相关参数
APP_ENV=local
APP_DEBUG=true   //应用调试模式
APP_KEY=base64:hMYz0BMJDJARKgrmaV93YQY/p9SatnV8m0kT4LVJR5w= //应用key
APP_URL=http://localhost
// 数据库连接参数
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelblog
DB_USERNAME=root
DB_PASSWORD=
DB_PREFIX='hd_'

// 缓存相关参数
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

// Redis 连接参数
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

// 邮件相关参数
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null  
登录后复制

其中,有关这个 APP_KEY 的解释,在 config/app.php 文件中有如下注释:


/*
|--------------------------------------------------------------------------
| Encryption Key
|--------------------------------------------------------------------------
|
| This key is used by the Illuminate encrypter service and should be set
| to a random, 32 character string, otherwise these encrypted strings
| will not be safe. Please do this before deploying an application!
|
*/

'key' => env('APP_KEY'),

'cipher' => 'AES-256-CBC',
登录后复制

key 键读取 .env 文件的 APP_KEY ,一般是 32 位的随机字符串。cipher 键决定 APP_KEY 的长度,一般是 AES-256-CBC (默认)表示 key 长 32 位字符,或者 AES-128-CBC 表示 16 位。

所以,为了保证会话和加密服务的安全, APP_KEY 必须设置,使用 Artisan 命令生成:


php artisan key:generate
登录后复制

这样,.env 文件中就会写入一个新的 APP_KEY

二、模型操作

1. DB 类


// 插入
DB::insert('insert into hd_user(username, password) values(?, ?)', ['admin', 123456]);

// 查询
DB::select('select * from hd_user where username = ?', ['admin']);

// 更新
DB::update('update hd_user set password= ? where username = ?', [654321, 'admin']);

// 删除
DB::delete('delete from hd_user where username = ?', ['admin']);
登录后复制

注:dd() 函数类似print_r(), 用于打印变量信息,是 Laravel 的辅助函数。

2. 查询构建器

DB 类的 table 方法为给定表返回一个查询构建器。


// 查询所有
DB::table('user')->get();

// 查询多条
DB::table('user')->where('age', '>', 20)->get();

// 查询一条
DB::table('user')->where('age', '>', 20)->first();

// 查询特定字段
DB::table('user')->select('name', 'email as user_email')->get();

// distinct() 方法去重复
$users = DB::table('user')->distinct()->get();
登录后复制

  

3. Eloquent ORM

1.创建模型


php artisan make:model User
登录后复制

2. 表名、主键、时间戳

表名:默认模型类名的复数作为表名,可以在模型类中定义 protected $table 属性来覆盖。

主键:默认主键名为"id",可以在模型类中定义 protected $primaryKey 属性来覆盖。

时间戳:默认会管理 created_at 和 updated_a 字段,可以在模型类中定义 public $timestamps 属性为 false 。

3.数据操作

在控制器方法中:


// 插入
$user = new User;
$user->username = 'admin';
$user->save();
// 查询
// 查询所有
User::get();

// 查询多条
User::where('age', '>', '20')->get();

// 查询一条
user::find(1);


// 更新
$user = User::find(1); // 查找主键为1的一条记录
$user->username = 'new name';
$user->save();         // 或者用 update() 方法


// 删除

// 方法1.先获取记录再删除
User::find(1)->delete();

// 方法2.通过主键直接删除
User::destroy(1, 2);

// 方法3.通过 where 条件删除
User::where('username', 'admin')->delete();
登录后复制

以上是Laravel 5.2中关于.env文件与模型操作的实例分享的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
4 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

无需OpenAI数据,跻身代码大模型榜单!UIUC发布StarCoder-15B-Instruct 无需OpenAI数据,跻身代码大模型榜单!UIUC发布StarCoder-15B-Instruct Jun 13, 2024 pm 01:59 PM

在软件技术的前沿,UIUC张令明组携手BigCode组织的研究者,近日公布了StarCoder2-15B-Instruct代码大模型。这一创新成果在代码生成任务取得了显着突破,成功超越CodeLlama-70B-Instruct,登上代码生成性能榜单之巅。 StarCoder2-15B-Instruct的独特之处在于其纯自对齐策略,整个训练流程公开透明,且完全自主可控。该模型通过StarCoder2-15B生成了数千个指令,响应对StarCoder-15B基座模型进行微调,无需依赖昂贵的人工标注数

Yolov10:详解、部署、应用一站式齐全! Yolov10:详解、部署、应用一站式齐全! Jun 07, 2024 pm 12:05 PM

一、前言在过去的几年里,YOLOs由于其在计算成本和检测性能之间的有效平衡,已成为实时目标检测领域的主导范式。研究人员探索了YOLO的架构设计、优化目标、数据扩充策略等,取得了显着进展。同时,依赖非极大值抑制(NMS)进行后处理阻碍了YOLO的端到端部署,并对推理延迟产生不利影响。在YOLOs中,各种组件的设计缺乏全面彻底的检查,导致显着的计算冗余,限制了模型的能力。它提供了次优的效率,以及相对大的性能改进潜力。在这项工作中,目标是从后处理和模型架构两个方面进一步提高YOLO的性能效率边界。为此

清华接手,YOLOv10问世:性能大幅提升,登上GitHub热榜 清华接手,YOLOv10问世:性能大幅提升,登上GitHub热榜 Jun 06, 2024 pm 12:20 PM

目标检测系统的标杆YOLO系列,再次获得了重磅升级。自今年2月YOLOv9发布之后,YOLO(YouOnlyLookOnce)系列的接力棒传到了清华大学研究人员的手上。上周末,YOLOv10推出的消息引发了AI界的关注。它被认为是计算机视觉领域的突破性框架,以实时的端到端目标检测能力而闻名,通过提供结合效率和准确性的强大解决方案,延续了YOLO系列的传统。论文地址:https://arxiv.org/pdf/2405.14458项目地址:https://github.com/THU-MIG/yo

Laravel和CodeIgniter的最新版本对比 Laravel和CodeIgniter的最新版本对比 Jun 05, 2024 pm 05:29 PM

Laravel9和CodeIgniter4的最新版本提供了更新的特性和改进。Laravel9采用MVC架构,提供数据库迁移、身份验证和模板引擎等功能。CodeIgniter4采用HMVC架构,提供路由、ORM和缓存。在性能方面,Laravel9的基于服务提供者设计模式和CodeIgniter4的轻量级框架使其具有出色的性能。在实际应用中,Laravel9适用于需要灵活性和强大功能的复杂项目,而CodeIgniter4适用于快速开发和小型应用程序。

谷歌Gemini 1.5技术报告:轻松证明奥数题,Flash版比GPT-4 Turbo快5倍 谷歌Gemini 1.5技术报告:轻松证明奥数题,Flash版比GPT-4 Turbo快5倍 Jun 13, 2024 pm 01:52 PM

今年2月,谷歌上线了多模态大模型Gemini1.5,通过工程和基础设施优化、MoE架构等策略大幅提升了性能和速度。拥有更长的上下文,更强推理能力,可以更好地处理跨模态内容。本周五,GoogleDeepMind正式发布了Gemini1.5的技术报告,内容覆盖Flash版等最近升级,该文档长达153页。技术报告链接:https://storage.googleapis.com/deepmind-media/gemini/gemini_v1_5_report.pdf在本报告中,谷歌介绍了Gemini1

综述!全面概括基础模型对于推动自动驾驶的重要作用 综述!全面概括基础模型对于推动自动驾驶的重要作用 Jun 11, 2024 pm 05:29 PM

写在前面&笔者的个人理解最近来,随着深度学习技术的发展和突破,大规模的基础模型(FoundationModels)在自然语言处理和计算机视觉领域取得了显着性的成果。基础模型在自动驾驶当中的应用也有很大的发展前景,可以提高对于场景的理解和推理。通过对丰富的语言和视觉数据进行预训练,基础模型可以理解和解释自动驾驶场景中的各类元素并进行推理,为驾驶决策和规划提供语言和动作命令。基础模型可以根据对驾驶场景的理解来实现数据增强,用于提供在常规驾驶和数据收集期间不太可能遇到的长尾分布中那些罕见的可行

Laravel 和 CodeIgniter 对于初学者来说哪一个更友好? Laravel 和 CodeIgniter 对于初学者来说哪一个更友好? Jun 05, 2024 pm 07:50 PM

对于初学者来说,CodeIgniter的学习曲线更平缓,功能较少,但涵盖了基本需求。Laravel提供了更广泛的功能集,但学习曲线稍陡。在性能方面,Laravel和CodeIgniter都表现出色。Laravel具有更广泛的文档和活跃的社区支持,而CodeIgniter更简单、轻量级,具有强大的安全功能。在建立博客应用程序的实战案例中,Laravel的EloquentORM简化了数据操作,而CodeIgniter需要更多的手动配置。

Laravel - Artisan 命令 Laravel - Artisan 命令 Aug 27, 2024 am 10:51 AM

Laravel - Artisan 命令 - Laravel 5.7 提供了处理和测试新命令的新方法。它包括测试 artisan 命令的新功能,下面提到了演示?

See all articles