phplaravel⼊门教程,PHP语⾔菜鸟笔记,laravel⼊门教程本⽂主要向⼤家介绍了PHP语⾔菜鸟笔记,laravel ⼊门教程,通过具体的内容向⼤家展⽰,希望对⼤家学习php语⾔有所帮助。
安装 Laravel:
查看laravel包: composer search laravel
查看所有版本: composer show -all laravel/laravel
⾸先,通过 Composer 安装 Laravel 安装器:composer global require "laravel/installer"
你还可以在终端中通过 Composer 的 create-project 命令来安装 Laravel 应⽤,下载5.4版本使⽤这个命令:
composer create-project --prefer-dist laravel/laravel blog 5.4.*
如果缺少vendor⽂件在当前⽂件夹下执⾏命令:composer install
配置 Laravel:
在 .env ⽂件中添加 key ; ⽣成key :php artisan key:generate
开启'debug' => env('APP_DEBUG', true), 在 \config\app.php ⽂件中
其他配置....
配置路由:
在 \routes\wab.php 页⾯,详情看⽂档
路由的从命名:
直接显⽰输出:Route::get('as',['as'=>'ass', function () { echo route('ass'); }]);或:Route::get('as', function () { echo route('ass'); })->name('ass');
控制器路由:Route::get('index','IndexController@index')->name('index');
通过辅助函数 route 为该命名路由⽣成 URL,可以有第⼆个参数。
路由组:共享属性以数组的形式参数传递给 Route::group ⽅法。
路由前缀:['prefix' => 'admin']  // 匹配 "/admin" URL
命名空间:['namespace' => 'Admin'] // 控制器在 "App\Http\Controllers\Admin" 命名空间下
中间件: ['middleware' => 'auth'] // 使⽤ Auth 中间件
Route::group(['namespace' => 'Admin'], function(){      });
视图传值:
给视图传⼀个值:return view('greeting', ['name' => 'James']);或: return view('greeting')->with('name', 'James');
给admin下的profile传⼀个$data数组值 :return view('admin.profile', $data);
返回上⼀个视图:return back();
跳转页⾯:return redirect('跳转的页⾯');
Blade模板:
输出变量:{{ $name }}
输出js代码:{!! $name !!}
不解析这个:@{{ name }}
给⼀个默认值:{{ $name or "这是默认值" }}
三元运算符:{{ isset($name) ? $name : "假就⽤这个" }}
if:    @if ($str > 60)
真显⽰
@else
假显⽰
@endif
unless: 除⾮/如果不 /  除…之外
编程php语言@unless ($str > 60)
除了 $str > 60 的,其他的都显⽰
@endunless
for:  @for ($i = 0; $i < 10; $i++)
{{ $i }}
@endfor
foreach:  @foreach ($users as $user)
{{ $user->id }}
@endforeach
forelse:是foreach 的补充,有就显⽰,没有就⾛下⾯的
@forelse ($users as $user)
有就显⽰
@empty
没有就⾛下⾯的
@endforelse
while:  @while (true)
I'm looping forever.
@endwhile
引⼈模版:@include( '路径.模版名' );
引⼈内容,要替换的部分:
@yield('title')
@yield('content')
@section('sidebar')
This is the master sidebar.
@show
替换内容:  @extends('layouts.app') :先引⼊要替换的页⾯,像⽗类⼀样
@section('title', 'Page Title')
@section('sidebar')
@parent  :这个显⽰sidebar 中默认的内容
This is appended to the master sidebar.
@endsection
@section('content')
This is my body content.
@endsection
Model操作:
创建model: php artisan make:model ⽂件名/userModel
model的约定:
在laravel中约定(⾮强制),表名叫xxs,复数形式.类和表名有关系,⼀般表名去掉s,即为Model的类名.
表名的约定 默认表名为Model名+s,可能通过的model类的table属性来指定表名.
id的约定 Model默认认为,每张表都有⼀个叫做id的主键,你可以通过primaryKey属性来指定主键列名.不想要created_at,updated_at字段,可以把model的timestamps属性设为false
class XxModel extends Model {
protected $table = 'yourTableName';//指定表名
protected $primaryKey = 'Xx_id'; //设置主键
public $timestamps = false; //去掉created_at,updated_at字段
}
继承⾃:Illuminate\Database\Eloquent\Model
实例化Model:
$model = new App\Xxx(); // 得到Xx表的Model,且不与表中任何⾏对应.
$model = Xxx::find($id); // 得到Xx表的Model,且与$id⾏数据对应.
增:
public function add() {
$msg = new Msg();
$msg->title = $_POST['title'];
$msg->content= $_POST['title'];
return $msg->save() ? 'OK' : 'fail';
}
查:
查单⾏: find()与first()
Msg::find($id) // 按id查
Msg::where('id','>',3)->first();// 按where条件查
查多⾏: all()和get()
Msg::all(['列1','列2']);// ⽆条件查所有⾏. select 列1,列2 from msgs; Msg::where('id','>',2)->get(['列1','列2']);// 按条件查多⾏
改:
public function up($id) {
if( empty($_POST) ) {
$msg = Msg::find($id);
return view('msg.up',['msg'=>$msg]);
}else {
$msg = Msg::find($id);
$msg->title = $_POST['title'];
$msg->content= $_POST['content'];
return $msg->save() ? 'OK' : 'fail';
}
}
删:
public function del($id) {
$msg = Msg::find($id);
return $msg->delete() ? 'ok' : 'fail';
}
复杂查询:// select .. where id>2 order by id desc limit 2,1; Msg::where('id','>',2)->orderBy('id','desc')->skip(2)->take(1)->get();统计
Msg::count(); //总数
Msg::avg('id'); //平均值
Msg::min('id'); //最⼩
Msg::max('id'); //最⼤
Msg::sum('id'); //合计
分组  // ⽤DB::raw()⽅法,raw是"裸,不修饰的"意思
Goods::groupBy('cat_id')->get(['cat_id',DB::raw('avg(price)')]) );
数据库:
引⼈:use Illuminate\Support\Facades\DB;
测试是否连接成功:$pdo = DB::connection()->getPdo();  dd($pdo);
运⾏ Select 查询:DB::select('select * from users where active = ?', [1]);
运⾏插⼊语句:DB::insert('insert into users (id, name) values (?, ?)', [1, 'Dayle']);
运⾏更新语句: DB::update('update users set votes = 100 where name = ?', ['John']);
运⾏删除语句:DB::delete('delete from users');
运⾏⼀个通⽤语句:DB::statement('drop table users');
以上就介绍了PHP的相关知识,希望对PHP有兴趣的朋友有所帮助。了解更多内容,请关注职坐标编程语⾔PHP频道!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。