又LAG隨性筆記
  • 關於我
  • 作品集
  • 生活隨筆
  • 與我聯絡
  • 隨手扎

隨手扎

September 23, 2019

30天成爲Laravel萌新(第6天) - 配置專案

在前三天已經安裝好Laravel的基本環境。今天算是一個分水嶺,不管你採用哪種方式建立開發環境,都應該已經得到一個預設好的Laravel工作目錄。在此我不會解釋目錄結構,有興趣可以自行參閱文檔。不過是先留意一下幾個文件與目錄:

  • artisan
  • config/
  • database/
  • public/
  • resources/
  • routes/
  • storage/

之後有用到會在加以說明。而今天,首先要進行專案的配置,也就是設定(config/)。沒錯,目錄 config 就是儲存相關配置的目錄。不過在此,我們還得先編輯 .env 檔案。你可能會找不著這份檔案,別擔心,目錄下有個 .env.example ,將其複製並重新命名即可。

接著我們找到以下內容:

APP_DEBUG=true
APP_URL=http://localhost

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

目前最爲重要的是關於APP和DB的設定。在發佈階段,APP_URL會需要調整,不過我們之後在說說。而目前預設情況僅有自己的電腦能夠瀏覽。其次是APP_DEBG,在發佈階段需要改為false。 此外,還會注意到一個APP_KEY的設定,如果其為空,請執行以下命令:

php artisan key:generate

接着是資料庫的設定,這裏需要改成資料庫的連結設定。如果使用MariaDB和MySQL,維持mysql就好。(新版本的MariaDB可能有問題)

September 22, 2019

30天成爲Laravel萌新(第5天) - Laradock的工作空間容器

在開始配置Laravel的環境設定檔案之前(.env),先來帶大伙看看laradocke最 重要的一個容器workspace。

關於workspace容器

workspace是laradock連結各個容器的重要容器,還記得我們昨天這麼做嗎:

docker-compose exec workspace composer create-project --prefer-dist laravel/laravel tutorial_blog 5.8.*

docker-compose exec的格式是docker-compose exec <CONTAINER> <COMMAND>。可是,可沒有吧workspace啟動(up)起來呀!我們像下面啟動了nginx、mariaDB、phpmyadmin而已阿。

docker-compose up -d nginx mariadb phpmyadmin

是的,laradock會自動啟動workspace這個容器。並且注意到後面的COMMAND實際就是在第2天用來初始話laravel專案的命令。在下完這的命令以後,會在原本建立的 laravel-tutorial 目錄下多一個 tutorial_blog 目錄。並且裡面有基本Laravel的環境。我們會在幾天後來設定這個環境,現在,來我們專注於 workspace 這個容器。

我們同用用docker-compose exec來進到 workspace 容器裡面。

docker-compose exec -u laradock workspace /bin/bash

或是用docker exec來進到裡頭。不過使用docker exec你還會需要知道真正的容器名字。所以命令可能像是下面這樣:

docker exec -it -u laradock  laradock_workspace_1 /bin/bash

我們使用 laradock 登入workspace容器(-u/--user)。laradock 預設用於開發的使用者帳號,如果不加上這個選項,會使用最高管理權限登入(root)。透過使用這個帳號登入,未來可能可以省去一些不必要的麻煩(ex:宿主機和虛擬機掛載目錄的權限問題)。

September 21, 2019

30天成爲Laravel萌新(第4天) - 使用laradock建立開發環境(下)

建立專案目錄

本次專案目錄預計會有以下內容:

  • laravel-tutorial
    • laradock
    • .laradock
    • tutorial_blog

laradock 和 .laradock 先不管他們。先建立 laravel-tutorial 目錄,並在該目錄鍵入:

git clone https://github.com/Laradock/laradock.git
cd laradock
git checkout v7.15

以上會安裝laradock,並切換到7.15版本。

設定laradock

在建立服務容器前,要先做設定。

首先, 複製 env-example 為 .env,然後找到以下設定並變更:

APP_CODE_PATH_HOST=../tutorial_blog
...
...
...
DATA_PATH_HOST=../.laradock/data

APP_CODE_PATH_HOST指定專案目錄(下一步驟建立),DATA_PATH_HOST則是未來資料儲存的位置,包含資料庫儲存位置。

接着建立並啓動環境:

September 20, 2019

30天成爲Laravel萌新(第3天) - 使用laradock建立開發環境(上)

除了使用composer以外,還可以使用 laradock 、Homestead、Valet、Laragon。Homestead是基於 Vagrant ,如果您已安裝VirtualBox,可以使用看看。而接下來說明laradock的使用方式。

Laradock 環境需求

laradock是基於docker的一個快速建立laravel的開發環境工具,理所當然的你會需要docker,此外你還會需要 docker-compose,以下列出範例使用的版本:

軟體版本
docker18.09
docker-compose1.25
git2.7.4

透過使用laradock,可以很快速的在Apache2、Nginx;MySQL、MariaDB;甚至是在PHP不同版本之間做切換。

September 19, 2019

30天成爲Laravel萌新(第2天) - 安装 Laravel

環境需求

這不是全部強制的,只是接下來一個月的時間,會以以下環境為範例:

軟體版本
Laravel5.8.18
Nginx1.14.0
MariaDB10.3.15
PHP7.2.19

如同前言所說,雖然Laravel已經釋出6.0版,但接下來將會以5.8為主。此外,也可以使用Apache網頁伺服器,儘管有些設定不同;至於資料庫也可以使用MySQL。並且,以上也都不是強制的,Laravel對於多個網頁伺服器、資料庫接受度良好,所以當然也可以使用PostgreSQL和其他支援PHP的網頁伺服器。
(雖然上面這樣列出,不過最後有可能會用Apache+MySQL再測試一次)

使用XAMPP

明天,我會介紹另外一個快速建置環境的方式,我會更推薦使用該方式。

如果你是Windows,可以直接安裝XAMPP,只是在之後如果遇到問題,請注意一下各個組件的版本。更多可以參考XAMPP的網站。

安裝Laravel

Composer是PHP的一個包管理器,儘管不是必要的,不過可以大量簡化Laravel的安裝程序,並且也可以加以安裝其他組件。因此,需要先確定Composer已經安裝好,並設定好環境。你可以透過 命令提示字元 或其他 Shell 的環境輸入composer -V,正確安裝完會顯示版本資訊。

安裝Laravel:

composer global require laravel/installer
September 18, 2019

30天成爲Laravel萌新(第1天) - 認識Laravel

原本,我是想寫下Laravel的介紹,但是…可能有些單調。因為有些經驗實在是 不太多,就算是看別人寫的關於Laravel的特色,和過往PHP開發到底又怎樣差異, 也還是對我而言有些無感。因此決定從我自身角度來介紹Laravel。

Laravel又被人稱為 為網頁藝術家創造的框架 。那是因為,相較於以前PHP 將頁面資料與邏輯代碼混合寫在一起的 義大利麵寫法 , Laravel是類似 Django這樣廣義的MVC框架。也就是將頁面資料與邏輯代碼分開。

那摸到底為神ㄇ要用Laravel? 我簡單列出以下以點:

  1. 首先,PHP還沒有死亡。實際上PHP在許多地方還是可以看的到。著名的 WordPress、Drupal都是用PHP寫的。在許多與網頁相關應用方面,PHP成熟且 易用,這也讓使用PHP多了一個理由。過去寫過很短的PHP還活 著 可以去參考一下wwww。
  2. 相比WordPress的易用、易上手,Laravel提供更高度的彈性。
  3. 遵守Laravel一些基本的開發原則,原始碼更容易維護。(就是有些人一樣能 寫成義大利麵….)
  4. Laravel提供多個極為好用的基本可選用功能。包含身份驗證、資料驗證、資 料庫分離、ORM、資源控制器、上傳等等等。
  • ««
  • «
  • 1
  • 2
  • 3
  •  … 
  • 30
  • 31
  • 32
  • 33
  • »
  • »»
© 又LAG隨性筆記 2023