關(guān)于laravel的介紹就不講了,總之laravel是款比較強(qiáng)大的框架,它是國外框架所以在安裝的上面可能比較麻煩。
laravel的安裝
首先安裝laravel之前要安裝composer,如果是linux系統(tǒng)即可直接下載安裝,下載完后不能安裝記得修改下文件權(quán)限用命令chmod,這邊主要講下window下如何使用composer這個工具。?
首先百度搜索中國composer鏡像,就可以找到composer config -g repositories.packagist composer?
http://packagist.phpcomposer.com這條命令,運(yùn)行cmd在命令行運(yùn)行上面的命令,就可以下載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 進(jìn)行安裝laravel,這邊要比較注意的是安裝目錄的路徑問題,如果你想安裝在d盤底下就在把命令行切到d目錄底下進(jìn)行安裝(在此操作之前要配置好環(huán)境變量)。
laravel的目錄結(jié)構(gòu)介紹
安裝完的第一次肯定是要想怎么去運(yùn)行它,很簡單,直接進(jìn)入public文件就可以打開一個開始頁面,如果在本地的話那就是localhost/laravelproject/public,就可以運(yùn)行。
接下來介紹下laravel目錄結(jié)構(gòu),首先介紹下public的index.php文件 里面主要是加載了開始文件然后才能成功運(yùn)行l(wèi)aravel,具體的兩個文件你可以在根目錄下bootstrap文件夾中找到?,F(xiàn)在看下app中的結(jié)構(gòu):
view中主要放的是視圖文件(創(chuàng)建文件時要用到blade模板,比如創(chuàng)建test.blade.php,laravel中是結(jié)合blade模板引擎來調(diào)用視圖模板)
controller放的是控制器(手動創(chuàng)建時記得要用composer 命令進(jìn)行更新)
config中主要是配置文件(比如配置數(shù)據(jù)庫時要用到database.php文件)
models主要是放模型(也就是數(shù)據(jù)庫的表)
routes則是路由配置,
filters則是過濾器。
laravel是怎么運(yùn)行的
剛學(xué)習(xí)時肯定是要先嘗試下如何運(yùn)行這個laravel,首先手動創(chuàng)建一個controller,文件命名為TestController.php,然打開命令行進(jìn)入項(xiàng)目的根目錄下 執(zhí)行 composer dumpautoload,里面內(nèi)容可以模仿homeController.php。
然后編輯routes.php文件,將原來的Route::GET(‘/’,function()…);修改為Route::Get(‘/’,’TestController@showWelcome’); 然后運(yùn)行也會跳到laravel歡迎界面。
如果Route::Get(‘test’,’TestController@showWelcome’);則在網(wǎng)站根目錄下后面直接增加test就可以訪問了,到了這里應(yīng)該明白了怎么到Controller,Controller怎么到View了。
laravel數(shù)據(jù)庫配置
這邊用到的是mysql,進(jìn)行了簡單的配置
'mysql' => array( 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'oss', 'username' => 'root', 'password' => '', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'prefix' => '', )
laravel的數(shù)據(jù)庫使用
<?php use 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() 查詢所有結(jié)果 ,User::find(2)查詢一個,Post::findOrFail(2)
如果沒找到就會返回錯誤,Post::save()、Post::where()->find()、Post::add()、Post::delete()
數(shù)據(jù)庫的簡便操作:
DB::table(‘tablename’)->insert([ 插入多個時要再加一個數(shù)組 ['title'=>'title','name'=>'name'] ['title'=>'title'] ['title'=>'title'] ]) 插入時要想得到ID DB::table('tablename')->insertGetId(['title'=>'titles']) 更新數(shù)據(jù)要有ID DB::table('tablename')->where('id',1)->update(['title'=>'titles']) 刪除數(shù)據(jù) DB::table('tablename')->where('id',1)->delete(); 查詢數(shù)據(jù) DB::table('tablename')->get(); 得到全部的值 DB::table('tablename')->get(['title']); 只查詢title的值 DB::table('tablename')->first(); 只拿第一個 DB::table('tablename')->orderBy('id','desc')->first(); 根據(jù)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');
多表關(guān)聯(lián)
在Post中定義
public function comment(){ return $this->hasMany('Comment','post_id') } 正向關(guān)聯(lián) 一對多 一對一是hasOne
在Comment中定義
public function post(){ return $this->belongsTo('Post','post_id') } 反向關(guān)聯(lián)
取得關(guān)聯(lián)值
Post::find(2)->comment 就可以得到Comment這張表的內(nèi)容 //這樣查詢一個是可以的 查詢多個就要設(shè)置預(yù)載入 查詢多個 Post::with('comment')->get(); Post::with(['comment'=>function($query){$query->where('id','>',2)}])->get(); 加條件
感謝大家的閱讀,希望大家有所收益。
本文轉(zhuǎn)自:https://blog.csdn.net/Happy_CSDN/article/details/49363219
推薦教程:《php教程》
Atas ialah kandungan terperinci 在php中如何學(xué)習(xí)laravel框架(菜鳥初學(xué)者). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Terdapat tiga cara utama untuk menetapkan pembolehubah persekitaran dalam PHP: 1. Konfigurasi global melalui php.ini; 2. Melalui pelayan web (seperti setenv Apache atau fastcgi_param of nginx); 3. Gunakan fungsi Putenv () dalam skrip PHP. Antaranya, php.ini sesuai untuk konfigurasi global dan jarang mengubah konfigurasi, konfigurasi pelayan web sesuai untuk senario yang perlu diasingkan, dan putenv () sesuai untuk pembolehubah sementara. Dasar kegigihan termasuk fail konfigurasi (seperti php.ini atau konfigurasi pelayan web), fail .Env dimuatkan dengan perpustakaan dotenv, dan suntikan dinamik pembolehubah dalam proses CI/CD. Maklumat sensitif pengurusan keselamatan harus dielakkan dengan keras, dan disyorkan untuk digunakan.

Cache konfigurasi Laravel meningkatkan prestasi dengan menggabungkan semua fail konfigurasi ke dalam fail cache tunggal. Mengaktifkan cache konfigurasi dalam persekitaran pengeluaran dapat mengurangkan operasi I/O dan penguraian fail pada setiap permintaan, dengan itu mempercepat pemuatan konfigurasi; 1. Ia harus diaktifkan apabila permohonan itu digunakan, konfigurasi stabil dan tiada perubahan yang kerap diperlukan; 2. Selepas membolehkan, ubah suai konfigurasi, anda perlu menjalankan semula phpartisanconfig: cache untuk berkuat kuasa; 3. Elakkan menggunakan logik dinamik atau penutupan yang bergantung kepada keadaan runtime dalam fail konfigurasi; 4. Apabila masalah penyelesaian masalah, anda harus terlebih dahulu membersihkan cache, periksa pembolehubah .Env dan cache semula.

Apabila memilih rangka kerja PHP yang sesuai, anda perlu mempertimbangkan secara komprehensif mengikut keperluan projek: Laravel sesuai untuk pembangunan pesat dan menyediakan enjin template eloquentorm dan bilah, yang mudah untuk operasi pangkalan data dan rendering bentuk dinamik; Symfony lebih fleksibel dan sesuai untuk sistem kompleks; Codeigniter adalah ringan dan sesuai untuk aplikasi mudah dengan keperluan prestasi tinggi. 2. Untuk memastikan ketepatan model AI, kita perlu memulakan dengan latihan data berkualiti tinggi, pemilihan penunjuk penilaian yang munasabah (seperti ketepatan, penarikan balik, nilai F1), penilaian prestasi biasa dan penalaan model, dan memastikan kualiti kod melalui ujian unit dan ujian integrasi, sambil terus memantau data input untuk mencegah data drift. 3. Banyak langkah diperlukan untuk melindungi privasi pengguna: menyulitkan dan menyimpan data sensitif (seperti AES

Untuk membolehkan bekas PHP menyokong pembinaan automatik, terasnya terletak pada mengkonfigurasi proses integrasi berterusan (CI). 1. Gunakan Dockerfile untuk menentukan persekitaran PHP, termasuk imej asas, pemasangan lanjutan, pengurusan ketergantungan dan tetapan kebenaran; 2. Konfigurasi alat CI/CD seperti Gitlabci, dan tentukan peringkat binaan, ujian dan penempatan melalui fail .gitlab-ci.yml untuk mencapai pembinaan, pengujian dan penggunaan automatik; 3. Mengintegrasikan kerangka ujian seperti PHPUnit untuk memastikan ujian secara automatik dijalankan selepas perubahan kod; 4. Gunakan strategi penempatan automatik seperti Kubernet untuk menentukan konfigurasi penempatan melalui fail penyebaran.yaml; 5. Mengoptimumkan Dockerfile dan mengamalkan pembinaan pelbagai peringkat

Eloquentscopes Laravel adalah alat yang merangkumi logik pertanyaan biasa, dibahagikan kepada skop tempatan dan skop global. 1. Skop tempatan ditakrifkan dengan kaedah yang bermula dengan skop dan perlu dipanggil secara eksplisit, seperti pos :: diterbitkan (); 2. Skop global secara automatik digunakan untuk semua pertanyaan, sering digunakan untuk pemadaman lembut atau sistem multi-penyewa, dan antara muka skop perlu dilaksanakan dan didaftarkan dalam model; 3. Skop boleh dilengkapi dengan parameter, seperti penapisan artikel mengikut tahun atau bulan, dan parameter yang sepadan diluluskan ketika memanggil; 4. Perhatikan spesifikasi penamaan, panggilan rantai, pelepasan sementara dan pengembangan gabungan apabila menggunakan untuk meningkatkan kejelasan kod dan kebolehgunaan semula.

Pengurusan kebenaran pengguna adalah mekanisme teras untuk merealisasikan pengewangan produk dalam pembangunan PHP. Ia memisahkan pengguna, peranan dan keizinan melalui model kawalan akses berasaskan peranan (RBAC) untuk mencapai peruntukan dan pengurusan kebenaran yang fleksibel. Langkah -langkah khusus termasuk: 1. 2. Melaksanakan kaedah pemeriksaan kebenaran dalam kod seperti $ user-> can ('edit_post'); 3. Gunakan cache untuk meningkatkan prestasi; 4. Gunakan kawalan kebenaran untuk merealisasikan fungsi produk dan perkhidmatan yang dibezakan, dengan itu menyokong sistem keahlian dan strategi harga; 5. Elakkan kebenaran butiran terlalu kasar atau terlalu halus, dan gunakan "pelaburan"

Idea utama PHP menggabungkan AI untuk analisis kandungan video adalah untuk membiarkan PHP berfungsi sebagai backend "gam", pertama memuat naik video ke penyimpanan awan, dan kemudian hubungi perkhidmatan AI (seperti Google CloudVideoi, dll) untuk analisis asynchronous; 2. PHP mengasingkan keputusan JSON, mengekstrak orang, objek, adegan, suara dan maklumat lain untuk menghasilkan tag pintar dan menyimpannya dalam pangkalan data; 3. Kelebihannya adalah menggunakan ekosistem web matang PHP untuk mengintegrasikan keupayaan AI dengan cepat, yang sesuai untuk projek dengan sistem PHP yang sedia ada untuk melaksanakan dengan cekap; 4. Cabaran umum termasuk pemprosesan fail yang besar (dihantar secara langsung ke penyimpanan awan dengan URL yang telah ditandatangani), tugas tak segerak (memperkenalkan beratur mesej), kawalan kos (analisis atas permintaan, pemantauan belanjawan) dan pengoptimuman hasil (standardisasi label); 5. Tag pintar meningkatkan visual dengan ketara

Untuk membina platform pembayaran kandungan PHP, adalah perlu untuk membina pengurusan pengguna, pengurusan kandungan, pembayaran dan sistem kawalan kebenaran. Pertama, tentukan sistem pengesahan pengguna dan gunakan JWT untuk mencapai pengesahan ringan; kedua, reka bentuk antara muka pengurusan backend dan bidang pangkalan data untuk menguruskan kandungan berbayar; ketiga, mengintegrasikan pembayaran Alipay atau WeChat dan memastikan keselamatan proses; Keempat, mengawal hak akses pengguna melalui sesi atau kuki. Memilih rangka kerja Laravel dapat meningkatkan kecekapan pembangunan, menggunakan tanda air dan pengurusan pengguna untuk mencegah kecurian kandungan, mengoptimumkan prestasi memerlukan peningkatan kod, pangkalan data, cache dan konfigurasi pelayan yang diselaraskan, dan dasar yang jelas mesti dirumuskan dan tingkah laku berniat jahat mesti dicegah.
