文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Laravel开发实例分析

2024-04-02 19:55

关注

本篇内容主要讲解“Laravel开发实例分析”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Laravel开发实例分析”吧!

  准备开发环境

  原教程使用官方推荐的Homestead开发环境。由于最近Docker开始流行,并且也有相应的Laravel对应的容器。所以本文以Laradock作为开发环境。

  安装Laradock

  克隆Laradock仓库到本地。

  gitclonehttps://github.com/laradock/laradock.git

  最终文件夹结构应该像这样:

  +laradock

  +project-z

  配置Laradock

  复制配置文件

  bashcdlaradockcpenv-example.env#复制配置文件

  进入Workspace

  bash#运行Laradockdocker-composeup-dnginx#进入LaradockWorkspacedocker-composeexec--user=laradockworkspacebash#ForGitBashwinptydocker-composeexec--user=laradockworkspacebash

  配置国内加速镜像

  #Workspace

  composerconfig-gl#查看composer设置

  composerconfig-grepo.packagistcomposerhttps://mirrors.aliyun.com/composer/#设置国内加速镜像

  构建页面

  创建应用

  #Workspace

  composercreate-projectlaravel/laravelweibo--prefer-dist"5.8.*"

  配置Nginx域名

  cpnginx/sites/laravel.conf.examplenginx/sites/weibo.conf

  修改新复制出的配置文件里的路径为将要创建的项目路径。

  修改Host

  编辑C:/Windows/System32/Drivers/etc/hosts

  增加一条127.0.0.1weibo.test

  .env文件

  .env文件包含了项目的一些设置,我们进行一些修改。

  APP_NAME=Weibo

  APP_ENV=local

  APP_KEY=base64:nsvnM5l0N5cOzT/dFqfUoYlkYffhDPnKPuYU4AWMdPc=

  APP_DEBUG=true

  APP_URL=http://weibo.test

  为了方便,我们在本地使用sqlite数据库。

  注释掉原有DB相关设置,添加下面内容

  DB_CONNECTION=sqlite

  DB_DATABASE=/database/database.sqlite

  并且创建相应数据库文件

  touchdatabase/database.sqlite

  使用Git管理代码

  cdweibo

  gitinit

  gitadd-A

  gitcommit-m"Initialcommit"

  上传到Gitee

  gitremoteaddorigingit@gitee.com:codingbit/weibo.git

  gitpush-uoriginmaster

  使用Heroku部署应用

  需要先安装heroku-cli工具。

  创建HerokuApp

  herokucreate

  配置Procfile文件:

  echoweb:vendor/bin/heroku-php-apache2public/>Procfile

  gitadd-A

  gitcommit-m"ProcfileforHeroku"

  gitpush

  herokubuildpacks:setheroku/php

  生成AppKey

  #Workspace

  $phpartisankey:generate--show

  base64:ta1aE+E8kuyDFlURbUrHEtL4HY71WtoffyNgUKldMWw=

  #Host

  herokuconfig:setAPP_KEY=base64:ta1aE+E8kuyDFlURbUrHEtL4HY71WtoffyNgUKldMWw=

  推送到Heroku上

  gitpushherokumaster

  上传成功,访问地址https://cbit-weibo.herokuapp.com/即可看到效果。

  统一代码风格

  通过编辑器的EditorConfig插件,统一代码风格。

  .editorconfig

  root=true

  [*]

  charset=utf-8

  end_of_line=lf

  insert_final_newline=true

  indent_style=space

  indent_size=4

  trim_trailing_whitespace=true

  [*.md]

  trim_trailing_whitespace=false

  [*.yml]

  indent_size=2

  [*.{js,html,blade.php,css,scss}]

  indent_style=space

  indent_size=2

  静态页面

  架子搭好了,开始学习创建基础静态页面。

  新建分支

  gitcheckoutmaster

  gitcheckout-bstatic-pages

  移除无用视图

  默认的welcome.blade.php视图文件,没有用,删掉。

  rmresources/views/welcome.blade.php

  配置路由

  routes/web.php

  <?php

  Route::get('/','StaticPagesController@home');

  Route::get('/help','StaticPagesController@help');

  Route::get('/about','StaticPagesController@about');

  get方法有两个参数:1.访问的URL;2.操作的控制器及对应的方法

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

  GET常用于页面读取

  POST常用于数据提交

  PATCH常用于数据更新

  DELETE常用于数据删除

  其中,PATCH和DELETE是不被浏览器所支持的,我们可以通过在提交表单中做一些手脚,让服务器以为这两个动作是从浏览器中发出的一样。

  生成静态页面控制器

  生成静态页面控制器:

  phpartisanmake:controllerStaticPagesController

  添加三个方法

  classStaticPagesControllerextendsController

  {

  publicfunctionhome()

  {

  return'主页';

  }

  publicfunctionhelp()

  {

  return'帮助页';

  }

  publicfunctionabout()

  {

  return'关于页';

  }

  }

  添加静态页面视图

  控制器中渲染视图,需要用到view方法,view方法接收两个参数,第一个参数是视图的路径名称,第二个参数是与视图绑定的数据,第二个参数为可选参数。

  app/Http/Controllers/StaticPagesController.php

  classStaticPagesControllerextendsController

  {

  publicfunctionhome()

  {

  returnview('static_pages/home');

  }

  publicfunctionhelp()

  {

  returnview('static_pages/help');

  }

  publicfunctionabout()

  {

  returnview('static_pages/about');

  }

  }

  默认情况下,所有的视图文件都存放在resources/views文件夹下。

  下面创建三个视图。

  resources/views/static_pages/home.blade.php

  <!DOCTYPEhtml>

  <html>

  <head>

  <title>WeiboApp</title>

  </head>

  <body>

  <h2>主页</h2>

  </body>

  </html>

  resources/views/static_pages/help.blade.php

  <!DOCTYPEhtml>

  <html>

  <head>

  <title>WeiboApp</title>

  </head>

  <body>

  <h2>帮助页</h2>

  </body>

  </html>

  resources/views/static_pages/about.blade.php

  <!DOCTYPEhtml>

  <html>

  <head>

  <title>WeiboApp</title>

  </head>

  <body>

  <h2>关于页</h2>

  </body>

  </html>

  使用通用视图

  使用通用视图避免代码重复的问题。

  resources/views/layouts/default.blade.php

  <!DOCTYPEhtml>

  <html>

  <head>

  <title>@yield('title','WeiboApp')-Laravel新手入门教程</title>

  </head>

  <body>

  @yield('content')

  </body>

  </html>

  Laravel的Blade模板支持继承,这意味多个子视图可以共用父视图提供的视图模板。

  修改视图模板。

  resources/views/static_pages/home.blade.php

  @extends('layouts.default')

  @section('content')

  <h2>主页</h2>

  @stop

  resources/views/static_pages/help.blade.php

  @extends('layouts.default')

  @section('title','帮助')

  @section('content')

  <h2>帮助页</h2>

  @stop

  resources/views/static_pages/about.blade.php

  @extends('layouts.default')

  @section('title','关于')

  @section('content')

  <h2>关于页</h2>

  @stop

  Git代码版本控制

  接着让我们将本次更改纳入版本控制中:

  gitadd-A

  gitcommit-m"基础页面"

  提交代码

  将Git切换到master分支,并合并static-pages分支上的修改:

  gitcheckoutmaster

  gitmergestatic-pages

  最后将代码推送到GitHub和Heroku上:

  gitpush#推送到Gitee

  gitpushherokumaster#上线到Heorku

到此,相信大家对“Laravel开发实例分析”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯