在php中如何学习laravel框架(菜鸟初学者)

2022-05-15 0 351

在php中如何学习laravel框架(菜鸟初学者)

关于laravel的介绍就不讲了,总之laravel是款比较强大的框架,它是国外框架所以在安装的上面可能比较麻烦。

laravel的安装

首先安装laravel之前要安装composer,如果是linux系统即可直接下载安装,下载完后不能安装记得修改下文件权限用命令chmod,这边主要讲下window下如何使用composer这个工具。

首先百度搜索中国composer镜像,就可以找到composer config -g repositories.packagist composer http://packagist.phpcomposer.com这条命令,运行cmd在命令行运行上面的命令,就可以下载composer工具,

下载成功后可以看到composer文件底下有个composer.json文件这是一个配置文件,打开配置文件写明php版本信息和要下载的laravel信息,格式如下:

  {    "name": "laravel/laravel",    "description": "The Laravel Framework.",    "keywords": ["framework", "laravel"],    "license": "MIT",    "type": "project",    "require": {        "php": ">=5.5.9",        "laravel/framework": "5.1.*"    },    "require-dev": {        "fzaninotto/faker": "~1.4",        "mockery/mockery": "0.9.*",        "phpunit/phpunit": "~4.0",        "phpspec/phpspec": "~2.1"    },    "autoload": {        "classmap": [            "database"        ],        "psr-4": {            "App\\\\": "app/"        }    },    "autoload-dev": {        "classmap": [            "tests/TestCase.php"        ]    },    "scripts": {        "post-install-cmd": [            "php artisan clear-compiled",            "php artisan optimize"        ],        "pre-update-cmd": [            "php artisan clear-compiled"        ],        "post-update-cmd": [            "php artisan optimize"        ],        "post-root-package-install": [            "php -r \\"copy('.env.example', '.env');\\""        ],        "post-create-project-cmd": [            "php artisan key:generate"        ]    },    "config": {        "preferred-install": "dist"    },    "repositories": [        {"type": "composer", "url": "http://packagist.phpcomposer.com"},        {"packagist": false}    ]}```

配置好之后输入composer install 进行安装laravel,这边要比较注意的是安装目录的路径问题,如果你想安装在d盘底下就在把命令行切到d目录底下进行安装(在此操作之前要配置好环境变量)。

laravel的目录结构介绍

安装完的第一次肯定是要想怎么去运行它,很简单,直接进入public文件就可以打开一个开始页面,如果在本地的话那就是localhost/laravelproject/public,就可以运行。

接下来介绍下laravel目录结构,首先介绍下public的index.php文件 里面主要是加载了开始文件然后才能成功运行laravel,具体的两个文件你可以在根目录下bootstrap文件夹中找到。现在看下app中的结构:

在php中如何学习laravel框架(菜鸟初学者)
view中主要放的是视图文件(创建文件时要用到blade模板,比如创建test.blade.php,laravel中是结合blade模板引擎来调用视图模板)

controller放的是控制器(手动创建时记得要用composer 命令进行更新)

config中主要是配置文件(比如配置数据库时要用到database.php文件)

models主要是放模型(也就是数据库的表)

routes则是路由配置,

filters则是过滤器。

laravel是怎么运行的

刚学习时肯定是要先尝试下如何运行这个laravel,首先手动创建一个controller,文件命名为TestController.php,然打开命令行进入项目的根目录下 执行 composer dumpautoload,里面内容可以模仿homeController.php。

然后编辑routes.php文件,将原来的Route::GET(‘/’,function()…);修改为Route::Get(‘/’,’TestController@showWelcome’); 然后运行也会跳到laravel欢迎界面。

如果Route::Get(‘test’,’TestController@showWelcome’);则在网站根目录下后面直接增加test就可以访问了,到了这里应该明白了怎么到Controller,Controller怎么到View了。

laravel数据库配置

这边用到的是mysql,进行了简单的配置

'mysql' => array('driver'    => 'mysql','host'      => 'localhost','database'  => 'oss','username'  => 'root','password'  => '','charset'   => 'utf8','collation' => 'utf8_unicode_ci','prefix'    => '',)

laravel的数据库使用

数据表比较多时且数据表的前缀不一样,则可以先配置模型model,在models文件夹中建立一个文件要与表名一样的php文件,内容如下:

<?phpuse Illuminate\\Auth\\UserTrait;use Illuminate\\Auth\\UserInterface;use Illuminate\\Auth\\Reminders\\RemindableTrait;use Illuminate\\Auth\\Reminders\\RemindableInterface;class User extends Eloquent implements UserInterface, RemindableInterface {    use UserTrait, RemindableTrait;    /**     * The database table used by the model.     *     * @var string     */    protected $table = 'users';    /**     * The attributes excluded from the model's JSON form.     *     * @var array     */    protected $hidden = array('password', 'remember_token');}

即可以直接使用 User ::all() 查询所有结果 ,User::find(2)查询一个,Post::findOrFail(2)

如果没找到就会返回错误,Post::save()、Post::where()->find()、Post::add()、Post::delete()

数据库的简便操作:

DB::table(‘tablename’)->insert([        插入多个时要再加一个数组        ['title'=>'title','name'=>'name']        ['title'=>'title']        ['title'=>'title']        ])        插入时要想得到ID        DB::table('tablename')->insertGetId(['title'=>'titles'])        更新数据要有ID        DB::table('tablename')->where('id',1)->update(['title'=>'titles'])        删除数据        DB::table('tablename')->where('id',1)->delete();        查询数据        DB::table('tablename')->get();  得到全部的值        DB::table('tablename')->get(['title']); 只查询title的值        DB::table('tablename')->first();  只拿第一个        DB::table('tablename')->orderBy('id','desc')->first(); 根据id排序        DB::table('tablename')->where('id','!=',2)->get(); 不等于2        DB::table('tablename')->where('id','!=',2)->where('id','>',5)->get(); 可以使用多个where        DB::table('tablename')->where('id','!=',2)->OrWhere('id','>',5)->get(); 或者        DB::table('tablename')->whereBetween('id',[2,5])->get();  闭包之间        DB::table('tablename')->whereIn('id',[2,5,9])->get();        DB::table('tablename')->whereNotIn('id',[2,5,9])->get();        DB::table('tablename')->whereNull('id')->get();  为空的话就可以查询出来        DB::table('tablename')->take(3)->get();  只查询3个        DB::table('tablename')->limit(3)->get();  只查询3个        DB::table('tablename')->skip(2)->take(3)->get();  只查询3个跳过第二个        DB::table('tablename')->where('id','!=',2)->pluck('title'); 只返回它的title        DB::table('tablename')->count();  有多少条记录        DB::table('tablename')->max('id');        DB::table('tablename')->min('id');        DB::table('tablename')->avg('id');        DB::table('tablename')->sum('id');

多表关联

在Post中定义

public function comment(){ return $this->hasMany('Comment','post_id') } 正向关联   一对多   一对一是hasOne

在Comment中定义

public function post(){ return $this->belongsTo('Post','post_id') }  反向关联

取得关联值

    Post::find(2)->comment  就可以得到Comment这张表的内容   //这样查询一个是可以的  查询多个就要设置预载入            查询多个                Post::with('comment')->get();                Post::with(['comment'=>function($query){$query->where('id','>',2)}])->get();  加条件

感谢大家的阅读,希望大家有所收益。

本文转自:https://blog.csdn.net/Happy_CSDN/article/details/49363219

推荐教程:《php教程》

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 在php中如何学习laravel框架(菜鸟初学者) https://www.jike1995.com/36134.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务