跳到主要內容

Laravel 初體驗 (MAC)

首先需要install Composer

https://getcomposer.org/

打開你的終端機

Finder->工具->前往資料夾

/應用程式/工具程式/終端機.app


php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php
php -r "if (hash('SHA384', file_get_contents('composer-setup.php')) === '41e71d86b40f28e771d4bb662b997f79625196afcca95a5abf44391188c695c6c1456e16154c75a211d238cc3bc5cb47') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
 
 
composer global require "laravel/installer"
 
 
set PATH
 
vi ~/.bash_profile
 
以下為本機備份
# The next line updates PATH for the Google Cloud SDK.
source '/Users/attz/gcloud auth login/google-cloud-sdk/path.bash.inc'

# The next line enables bash completion for gcloud.
source '/Users/attz/gcloud auth login/google-cloud-sdk/completion.bash.inc'

export SCALA_HOME="/usr/local/share/scala"
export ACTIVATOR="/Applications/activator"
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home"
export LARAVEL_HOME="~/.composer/vendor/bin"
export PATH="$SCALA_HOME/bin:$PATH"
export PATH="$ACTIVATOR:$PATH"
export PATH="$JAVA_HOME:$PATH"
export PATH="$LARAVEL_HOME:$PATH"
export PATH
 
 
你只要輸入以下即可

export LARAVEL_HOME="~/.composer/vendor/bin"
export PATH="$LARAVEL_HOME:$PATH"
export PATH
  
 
查看專案版本
 
php artisan --version
 
->Laravel Framework version 5.2.23 
 
開始建立專案
 
laravel new blog
 
設定mamp路徑為 

<你的路徑>/blog/public/
 
 
 
 
cd blog
 
 
 
 
 
編輯 vi Http/routes.php 
 
Route::get('users', function()
{
    return 'Users!';
}); 
 
編輯目錄下 blog/public/.htaccess
 
vi public/.htaccess  
 
Options +FollowSymLinks
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
 
  
完成
 
http://localhost/users
 
  

先下個小結… 比Yii 還需要多一點的設定摸索…






進階 
 
編輯 vi Http/routes.php 
 
Route::get('users', function()
{
    return view('users');
}); 


編輯 vi resources/views/layout.blade.php
 
 
 
<html>
    <body>
        <h1>ATTZ Quickstart</h1>

        @yield('content')
    </body>
</html>
 
 
編輯 vi resources/views/users.blade.php
 
 
@extends('layout')

@section('content')
    Users!
@stop   



進階 指定 Controller
 
cp app/Http/Controllers/Controller.php app/Http/Controllers/PhotoController.php

vi PhotoController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Routing\Controller as BaseController;
use App\Http\Controllers\Controller;

class PhotoController extends BaseController
{
    public function index()
    {
        return view('photo');
    }
}

編輯 增加 vi app/Http/routes.php 

Route::resource('photo', 'PhotoController');


編輯 vi resources/views/photo.blade.php  
 
@extends('layout')

@section('content')
    MyPhoto
@stop   


完成
http://localhost/photo


進階 指定 
vi app/Http/Controllers/PhotoController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Routing\Controller as BaseController;
use App\Http\Controllers\Controller;

class PhotoController extends BaseController
{
    public function index()
    {
        return view('photo');
    }
    public function index2()
    {
        return view('photo2');
    } 
}
編輯 增加 vi app/Http/routes.php
Route::resource('photo2', 'PhotoController@index2');

編輯 vi resources/views/photo2.blade.php
@extends('layout')

@section('content')
    MyPhoto2
@stop   

完成http://localhost/photo2
 
 










留言

這個網誌中的熱門文章

一個上帝、狼、獅子和羊的故事

上帝把兩群羊放在草原上,一群在南,一群在北。 上帝還給羊群找了兩種天敵,一種是獅子,一種是狼。 上帝對羊群說:「如果你們要狼,就給一隻,任由牠隨意地咬你們,但狼比獅子瘦弱且食量少。 如果你們要獅子,就給兩頭,但你們可以在兩頭獅子中任選一頭,而且還可以隨時更換。」 這道即將考驗你的問題,就是「如果你也在羊群中,你是選狼呢?還是選獅子?」 依照你的直覺,應該很容易選擇吧?很好!現在起,務必牢牢地記住你的選擇,然後往下接著看。 南邊那群羊想了想,獅子比狼兇猛得多,還是要狼吧!於是,牠們就要了一隻狼。 北邊那群羊則想,獅子雖然比狼兇猛得多,但我們有選擇權,還是要獅子吧!於是,牠們就要了兩頭獅子。 那隻進了南邊羊群的狼,即刻開始吃羊。狼身體小,食量也小,一隻羊夠牠吃幾天了, 如此羊群幾天才被追殺一次。北邊那群羊挑選了一頭獅子,另一頭則留在上帝那裡。 而進入北邊羊群後的獅子,不但比狼兇猛,而且食量驚人,才開始吃羊, 就每天至少吃一隻羊,所以羊群天天都驚恐萬狀地被追殺。北邊的羊群趕緊請上帝換一頭獅子。 不料,上帝保管的那頭獅子太久沒吃,正飢餓難耐,牠撲進羊群,比前面那頭獅子咬得更瘋狂。 羊群一天到晚只是逃命,連草都快吃不成了。 南邊的羊群慶幸自己選對了天敵,又嘲笑北邊的羊群沒有眼光。 北邊的羊群非常後悔,向上帝大倒苦水,要求更換天敵,改要一隻狼。 上帝說:「天敵一旦確定,就不能更改,必須世代相隨。請認清現實,你們唯一的權利,是在兩頭獅子中做選擇。」 北邊的羊群只好把兩頭獅子不斷更換。 可是兩頭獅子同樣凶殘,換哪一頭都讓北邊的羊群比南邊的羊群悲慘得多,牠們索性不換了, 讓一頭獅子吃得膘肥體壯,另一頭獅子則餓得精瘦。眼看那頭瘦獅子快要餓死了,羊群才請上帝換一頭。 這頭瘦獅子經過長時間的飢餓後,慢慢悟出了一個道理──自己雖然兇猛異常,一百隻羊都不是對手, 可是自己的命運卻操縱在羊群手裡,羊群隨時可以把自己送回上帝那裡,讓自己飽受飢餓的煎熬,甚至有可能餓死── 想通這個道理後,瘦獅子就對羊群特別客氣,只吃死羊和病羊,凡是健康的羊牠都不吃,令羊群喜出望外。 所以有幾隻小羊開心地提議:「乾脆固定只要瘦獅子,不要肥獅子。怎樣!?」 一隻老公羊馬上提醒:「別忘啦!瘦獅子是怕我們送牠回上帝那裡挨餓,才對我們這麼好。 萬一餓死了肥獅子,我們將...

透過 Docker 快速建立 openvpn 伺服器

此docker install安裝適用 ubuntu 16.04 18.04 如果已安裝docker-compose 那任何linux環境都可以使用 sudo apt update && sudo apt install -y curl vim curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh sudo adduser   "$USER"   docker sudo reboot 然後再登入一次 接下來有安裝docker-compose 的機器都適用 nano docker-compose.yml OR vi docker-compose.yml -------請輸入以下內容 services:     openvpn:         container_name: openvpn         image: kylemanna/openvpn         volumes:         - ./data:/etc/openvpn         devices:         - /dev/net/tun         ports:         - '1194:1194/udp'         cap_add:         - NET_ADMIN         restart: always         sysctls:           net.ipv6.conf.all.disable_ipv6: 0       ...

完美同盟/Perfect League

完美同盟/Perfect League 時間  20-30MIN 人數  4 OR 6人 年齡  6歲以上 類型  卡牌 機制  Co-operative Play 合作遊戲、Hand Management 手牌管理、Memory 記憶、Trick-taking 牌組搭配 設計師  Way Of Change、ALex Tseng 美術  Tanner Lai 編輯  Bountiful Living 出版年 2016 遊戲基本介紹 想認識新朋友 (異性朋友),不可或缺的必備良藥! 3回合內玩出默契與互動,兩人一組充足的互動特性,讓原本尷尬與陌生的新朋友變的熱絡,在遊戲回合後自然而然讓兩人有更多的討論。 遊戲規則介紹 這是一款兩個人一組的默契遊戲,經由與隊友交換手牌,組合桌上公牌,搭配出最大牌型決勝負。遊戲過程主要是選牌(宣告)、交換手牌、出牌、組合牌型 四個步驟來進行,反覆直到有隊伍取得10分獲勝。 [ 準備階段 ] 4人遊戲時,先將特殊牌(花朵圖案)挑出,然後每人發11張手牌及2張特殊牌,同組玩家對坐且左右兩邊為其他Team的玩家 [ 回合開始 ] 回合開始時在場上開啟三張公用牌 [ 宣告(選牌) ] 參考桌上公牌,思考最佳牌組組合,起始玩家及起始玩家右手邊的玩家,需要選擇要選2張或是1張公牌來組合牌型,被選過的牌,另一隊也可以選擇。 [ 交換手牌 ] 選擇1張公牌的隊伍可以跟同伴交換3張手牌,選擇2張的隊伍只能交換1張手牌,藉由交換手牌暗示隊友如何出牌,過程不可提示牌組相關的訊息。(註:特殊牌不能交換) [ 出牌 ] 從起始玩家開始,順時針每人輪流出1張牌,每人需出2張牌,與隊友在桌上選好的公牌搭配(選2張的隊伍,可以選1張或2張公牌組合),組合成最大的5張牌牌組與敵隊比大,結算後含公牌(不含手牌)放入棄牌堆。 [ 結算 ] 每回合獲勝隊伍會得到2顆鑽石,第二名會得到1顆,1顆鑽石代表1分,紅寶石代表5分,可自行決定達標獲勝總分,培養最佳默契。(註:使用剩餘的牌繼續下一回合遊戲,最後剩3張(含特殊牌)遊戲結束。) 遊戲特別之處 1.只要10分鐘,將尷尬化為無形,就是這個遊戲最強的特別之處! 2.利用交換手牌加深...