Laravel的项目搭建(初识Laravel)

一、项目简单搭建(laravel)

1.首先我们确保使用国内的 Composer 加速镜像(加速原理 详见这里):

$ composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

 2.新建一个名为 Laravel 的项目:

$ composer create-project laravel/laravel Laravel --prefer-dist "9.1.*"

 3.小皮搭建站点并在浏览器运行

4.写一个简单东西


二、搭建过程中的问题

1.Homestead 虚拟机和 PHPStudy 之间关系:

因为我是看的一个书的教程跟着后面整的,那本书的网址在下边(ps:本来可以白嫖的,我们组大佬买过,他给我扫了一下下,之后没有用了,我不好意思在让他给我再扫,然后然后就只能......)《L01 Laravel 教程 - Web 开发实战入门 ( Laravel 9.x )》 | Laravel China 社区 我们是高品质的 Laravel 开发者社区,致力于为 Laravel 开发者提供一个分享创造、结识伙伴、协同互助的论坛。icon-default.png?t=N7T8https://learnku.com/courses/laravel-essential-training/9.x那本书上面是用的Homestead 虚拟机搭的站点,

1)   然后我就寻思小皮和Homestead 虚拟机有什么区别????

        Homestead 虚拟机和 PHPStudy 都是用于搭建本地开发环境的工具

>>但它们有一些不同之处:
>>>Homestead 虚拟机是 Laravel 官方提供的开发环境,它使用了虚拟化技术,基于 VirtualBox 和 Vagrant 来创建一个独立的虚拟机。

它预装了 Laravel 所需的运行环境,并提供了一致性和可移植性的开发环境。

你可以使用 Homestead 虚拟机来快速搭建和管理 Laravel 项目的开发环境。

>>>PHPStudy 是一个针对 Windows 操作系统的集成开发环境(IDE)

它提供了一个方便的一键安装包,包含了 PHP、Apache/Nginx、MySQL、phpMyAdmin 等常用的开发工具和服务。

通过 PHPStudy,你可以在 Windows 上快速搭建和管理 PHP 项目的开发环境,而无需手动配置和安装各个组件。

总的来说,Homestead 虚拟机适用于 Laravel 开发,并提供了跨平台和可移植的开发环境。而 PHPStudy 则专注于 Windows 上的 PHP 开发,并提供了一个方便集成的开发环境。选择使用哪个工具取决于你的具体需求和偏好。


2.过程中一些文件含义

1)Blade模板是:

Blade 是 Laravel 提供的模板引擎,它简单强大。

不像其他的 PHP 模板引擎,Blade 允许在视图中使用原生 PHP 代码。

实际上,所有的 Blade 视图最终都会被编译成原生 PHP 代码,缓存在 storage/framework/views 文件夹中。

Laravel 使用的是这些编译后的缓存文件,而不是视图本身,所以,Blade 对于应用程序来说是零开销的。

当你修改了视图文件,那么它会重新编译并缓存,以便使用。

Blade 视图以 blade.php 为后缀名,一般存放于 resources/views 文件夹中。

模板继承是最常用的一个 blade 模板功能

blade.php 是Laravel 的一套模版引擎,有自己的一套规则,通过继承父视图,可以减少很多重复代码


2)   app/Http/Controllers 存放控制器文件
        app/Http/Middleware 存放「中间件」文件
        app/Models 存放数据模型
3)  composer.lock文件

composer.lock文件是Composer工具在安装和更新依赖库时自动生成的文件。

当你运行composer installcomposer update命令时,Composer会根据你的composer.json文件中定义的依赖关系,下载对应的库并创建或更新composer.lock文件。

composer.lock文件的存在有两个重要作用:
  1. 锁定依赖版本:composer.lock文件确保在多个环境之间保持依赖库的一致性。它记录了在开发过程中使用的确切库版本,以便在不同的环境中进行部署或共享给其他开发者时,可以确保使用相同的库版本。

  2. 提高安装速度:当composer.lock文件存在时,Composer将直接使用锁定的版本号进行库的安装,而不再去检查并下载最新版本。这可以提高安装速度,并减少意外的版本升级导致的问题。

通常情况下,你应该将composer.lock文件包含在你的版本控制系统中,以确保所有开发者和部署环境使用相同的版本配置。当你在新的开发环境中进行部署或共享项目时,只需要运行composer install命令,Composer将根据composer.lock文件准确地安装相应的依赖库版本。

4)storage 编译后的视图、基于会话、文件缓存和其它框架生成的文件
5)vendor Composer 依赖模块

在 Laravel 项目中,vendor 目录是由 Composer 自动生成并存放所有依赖模块的地方。

当你执行 composer install 或 composer update 命令时,Composer 会根据 composer.json 文件中的配置下载所需的依赖包,并将它们放置在 vendor 目录中。

vendor 目录有一个层次结构,它会将每个依赖模块放在独立的文件夹中。这样做的目的是为了避免不同模块之间的命名冲突。

在 vendor 目录中,每个依赖模块通常会有一个 composer.json 文件,用于描述该模块的信息、版本等。

此外,还会包含该模块的源代码文件、配置文件、测试文件等。

vendor 目录通常不应该被手动修改,因为它是由 Composer 管理的。

当你需要更新、添加或删除依赖模块时,应该通过编辑 composer.json 文件并执行相应的 Composer 命令来更新 vendor 目录。

通过将依赖模块放置在 vendor 目录中,你可以更好地组织和管理你的项目的依赖关系,并确保你的项目可以方便地使用这些模块提供的功能。

6)"laravel/framework": "^9.2",

^9.2 表示任意等于或大于 9.2 的 9.x.x 版本,比如 9.2.0、9.3、9.11.0 等。只要第一位是 9 并且大于 ^ 后面指定的 9.2 都满足条件。

7).env 文件

.env 文件来针对不同的运行环境作不同的设置。比如下面我们所编辑的 .env 文件配置将应用在本地的开发环境(local)上。

  • php artisan tinker 提供了一个便捷的命令行工具,让你以交互方式与 Laravel 应用程序进行实时互动,以帮助你更快地测试和调试代码。
  • getenv('APP_ENV') ,我们可以获取配置文件中设置的应用程序环境变量的值。一般来说,该变量的值可以是 "local"(本地开发环境)、"staging"(测试环境)或 "production"(生产环境)等。


3.由上面延伸到(本地开发环境、测试环境、生产环境之间的区别?)

>>>本地开发环境是指在开发软件时在个人计算机或本地服务器上创建的环境。

它用于开发、调试和测试代码,通常包含所有必要的软件和工具,如编程语言、数据库、服务器等。本地开发环境可以提供灵活性和便利性,使开发人员能够快速开发和调试代码。

>>>测试环境是用于测试软件应用程序的环境。

它是一个独立的环境,与生产环境相似,但不会影响到实际用户。

在测试环境中,开发人员可以进行系统测试、集成测试、性能测试等,以确保软件在生产环境中运行时能够正常工作。测试环境的目的是发现和解决潜在的问题和错误

>>>生产环境是指最终部署和运行软件应用程序的环境。它是用户最终访问和使用的环境。

生产环境需要具备高可用性、稳定性和安全性,因此通常需要优化配置和专业的服务器架构。

在生产环境中,开发人员应该避免直接进行代码更改,而是通过测试环境和版本控制系统来进行部署和更新。

>>>总的来说,本地开发环境用于开发和调试代码,测试环境用于测试软件,而生产环境是最终用户需要的稳定环境。为了确保软件质量和稳定性,开发人员应该在这三个环境中进行适当的测试和部署。


4.在 Laravel 中我们较为常用的几个基本的 HTTP 操作分别为 GET、POST、PATCH、DELETE

  • GET 常用于页面读取

  • POST 常用于数据提交

  • PATCH 常用于数据更新

  • DELETE 常用于数据删除

>>>在这四个动作中,PATCH 和 DELETE 是不被浏览器所支持的,但我们可以通过在提交表单中做一些手脚,让服务器以为这两个动作是从浏览器中发出的一样(如何在表单中通过添加隐藏域的方式来欺骗服务器

5.Laravel 的控制器命名规范统一使用驼峰式大小写和复数形式来命名

驼峰式大小写icon-default.png?t=N7T8http://baike.baidu.com/view/2359058.htm


6.最最最最最后呢,就是说查了一下后端常用的框架有哪些

后端开发有很多不同的框架可供选择,以下是一些常用的后端框架:

1. Django:Django 是一个用于构建复杂、高性能 Web 应用程序的 Python 框架。它提供了一套强大的工具和库,使开发者可以快速构建功能完善的应用程序。

2. Ruby on Rails:Ruby on Rails 是一个使用 Ruby 编程语言的开发框架。它遵循了一系列约定和最佳实践,帮助开发者快速构建可靠的 Web 应用程序。

3. Express.js:Express.js 是一个基于 Node.js 的 Web 应用程序框架。它提供了一套简洁的 API,用于处理路由、中间件和请求响应等。

4. Flask:Flask 是一个使用 Python 编程语言的轻量级 Web 框架。它注重简洁性和灵活性,使开发者可以根据自己的需求快速构建 Web 应用程序。

5. Laravel:Laravel 是一个使用 PHP 编程语言的 Web 应用程序框架。它提供了丰富的功能和工具,帮助开发者构建优雅且具有高性能的应用程序。

6. Spring Boot:Spring Boot 是一个用于构建 Java 应用程序的框架。它简化了应用程序的开发流程,并提供了各种功能模块,包括依赖注入、Web 开发、数据库操作等。

主要是之后毕设可能需要自己写后台了,然后突然发现不太了解后台什么框架乱七八糟的,就查了一下,做个准备!

  • 20
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Laravel Snowflake是一个针对Laravel框架开发的Snowflake分布式ID生成器。Snowflake是Twitter开源的一种分布式ID生成算法,通过生成一个64位的长整型ID,在分布式系统中保证ID的唯一性。Laravel Snowflake将Snowflake算法和Laravel框架结合起来,方便开发者在Laravel项目中使用Snowflake生成全局唯一的ID。 使用Laravel Snowflake可以解决在分布式系统中生成唯一ID的需求。在传统的自增ID方式下,由于多个服务节点并行生成ID,容易产生ID冲突的问题。而Snowflake算法通过使用时间戳、机器ID和序列号的方式生成ID,可以保证在不同节点生成的ID具有严格递增的特性,且不会发生冲突。 使用Laravel Snowflake非常简单。首先,在Laravel项目中通过Composer安装Snowflake库,然后在配置文件中配置Snowflake的相关信息,如机器ID等。接着,在需要生成ID的地方调用Snowflake的方法即可获取一个唯一ID。生成的ID可以用于数据库主键、订单号等场景。 相比其他方式,如UUID等,Snowflake算法有着更好的性能表现,生成的ID长度更短,且排序更有序。在高并发的系统中,使用Laravel Snowflake可以有效地提高性能和减少ID冲突的可能性。 总之,Laravel Snowflake是一个为Laravel项目开发的Snowflake分布式ID生成器,通过结合Snowflake算法和Laravel框架,可以方便地在分布式系统中生成全局唯一的ID,解决了ID冲突的问题,提高了系统性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值