การติดตั้ง Laravel 4.1 (php framework)
หน้าแรก PHP MySQL เกร็ดความรู้ การติดตั้ง Laravel 4.1 (php framework)
Laravel เป็น php framework ที่น่าสนใจมากตัวหนึ่ง มีโครสร้างที่ง่ายต่อการเรียนรู้และการนำไปใช้งาน ตอนที่เขียน version ปัจจุบันเป็น
version 4.1 จุดเด่นที่สำคัญคือ Laravel มี component ที่จำเป็น ให้กับเหล่า web programmer ได้ใช้อย่างครบครัน เราสามารถเรียกใช้งาน
ได้โดยตรงหรือจะพัฒนา component หรือ module ขึ้นมาใช้งานเองได้ เพราะฉะนั้นเราจึงไม่พลาดที่จะเรียนรู้และประยุกต์นำมาใช้งานจริงมัน โดยเริ่ม
จากการติดตั้ง
สิ่งจำเป็นที่ต้องมี
1. คอมพิวเตอร์ แน่นอนถ้าไม่มีข้อนี้เลิกคิดที่ทำข้อต่อไป 😛
2. Web Server เครื่องที่ใช้เขียนบทความนี้เป็น windows ขอใช้ตัว xampp ที่มาพร้อมกับ Apache+PHP+MySQL
3. PHP มาพร้อมกับตัว xampp อยู่แล้ว ถ้าให้ดูต้องการ version php ไม่ตำกว่า 5.3 และเปิดใช้ MCrypt PHP Extension
4. Database เลือกใช้ mysql ที่มาพร้อมกับ xampp อยู่แล้ว
5. Text Editor ยุคนี้คงหนีไม่พัน Sublime Text
เริ่มติดตั้งกัน
Laravel มีวิธีการติดตั้งหลายวิธี หากใครมี Git สามารถใช้คำสั่ง git clone ได้เลย
| Code |
| git clone git@github.com:laravel/laravel.git my_project |
อีกวิธีหนึ่งที่คิดว่าน่าจะสะดวกรวดเร็ว เหมาะต่อการอับเดตในอนาคต คือวิธีแบบ Composer (การติดตั้ง Composer) ซึ่งหลังจากที่เราติดตั้ง Composer
เรียบร้อยแล้ว สามารถใช้ คำสั่งในการติดตัั้ง ดังนี้
| Code |
| composer create-project laravel/laravel --prefer-dist |
Options prefer-dist คือ ติดตั้ง package จากปลายทาง

create project โดยการกำหนดชื่อ project
| Code |
| composer create-project laravel/laravel {project-name} --prefer-dist |

ทดสอบผลการติดตั้งกันหน่อย โดยพิมพ์ url : http://localhost/laravel/public/

สังเกตว่าจะมี folder public ติดมาด้วย สามารถเอา public ออกได้หลายวิธีด้วยกัน วิธีที่ง่ายที่สุดน่าจะเป็นการเปลี่ยน path การ point ของ
Apache DocumentRoot
# The location of our projects public directory.
DocumentRoot c:xampphtdocslaravelpublic
อีกวิธีเหมาะกับคนที่มีหลายๆ project ในเครื่องเดียวและขี้เกียจสร้าง virtual host คือการแก้ไข path config ดังนี้
1. Copy file ทั้งหมดใน folder public ออกมาอยู่ application root เช่น c:xampphtdocslaravel
2. แก้ไข file index.php (c:xampphtdocslaravelindex.php)
comment code เดิมไว้กันพลาด และแก้ไขและแทนที่ code ด้านล่างเข้าไป
#1
| Code |
| //require __DIR__.'/../bootstrap/autoload.php'; require __DIR__.'/bootstrap/autoload.php'; |
#2
| Code |
| //$app = require_once __DIR__.'/../bootstrap/start.php'; $app = require_once __DIR__.'/bootstrap/start.php'; |
3. แก้ไข file paths.php (c:xampphtdocslaravelbootsrappaths.php)
#1
| Code |
| //'public' => __DIR__.'/../public', 'public' => __DIR__.'/..', |
ทดสอบลองเข้าเวบด้วย url : http://localhost/laravel/ ก็สามารถเข้าได้เช่นกัน

หากสังเกตใน folder application root จะมี file ชื่อ composer.json ซึ่งเป็น file config ของ composer หากต้องการติด
ตั้ง package เพิ่มเติมซึ่งเราสามารถค้นหาได้จาก https://packagist.org/search/?tags=laravel
พอได้ package ที่ต้องการแล้วเพียงแค่แก้ไข file composer.json ตรงส่วน
| Code |
| "require": { "laravel/framework": "4.1.*", "{packagename}":"{version}" } |
แล้วรันคำสั่ง
| Code |
| composer update |

โครงสร้างภายใน Laravel
app/
เป็นแหล่งเก็บ application code สำคัญใน web ของเรา ซึ่งเราสามารถ custom code ในส่วนนี้ได้
bootstrap/
autoload.php
paths.php
start.php
เป็นจุดเริ่มต้นของตัว framework ที่จะเริ่มโหลด resource ต่างๆตามขั้นตอนพร้อมกับกำหนด ส่วน config file system หรือ
environments ต่างๆได้จากส่วนนี้
vendor/
มีหน้าที่เก็บ composer packages ต่างๆที่ใช้ใน application ของเรา
public/
packages/
.htaccess
favicon.ico
index.php
robots.txt
เป็นส่วนที่เราสามารถแก้ไขและเปลี่ยนได้มากที่สุด เราสามารถกำหนดหรือเก็บ assets ที่ใช้ในเวบ application เช่น css,javascript และ
รูปภาพ ได้ในพื้นที่นี้ หรือ อาจจะเก็บ assets ใน folder packages หากเป็น content ที่มาจาก third party packages ต่างๆ
สามารถสร้างหรือแก้ไขส่วนของการ rewrite URL ได้จาก file .htaccess ในส่วนนี้ หรือจะทำการแก้ไข favicon ขนาด 16x16px สามารถ
แทนที่ได้ทันที นอกจากนั้น ไฟล์แรก ที่ Laravel Bootstrap เริ่มต้นทำงานแล้วเริ่มส่งให้ browser ประมวลผลต่อก็อยู่ที่นี้ (index.php)
.gitattributes
เก็บ git control configuration
.gitignore
เป็น ไฟล์ที่แจ้ง git ว่ามีไฟล์หรือ folder ใดบ้างที่ไม่อยู่ใน Git version control system
artisan
เป็น file php ที่เอาไว้ execute คำสั่งในรูปแบบ Artisan Command Line ซึ่งมีคำสั่งที่มีประโยชน์มากมายที่ช่วยให้เราเขียน web
application ด้วย Laravel ได้สนุกสนานมากยิ่งขึ้น สำหรับคนที่ชอบแนว command line interface และ แนว scaffold generator
code
composer.json
เก็บ composer configuration เราสามารถ ติดตั้ง หรือ แก้ไข packages ได้จากไฟล์นี้
composer.lock
หลายๆครั้งเรามักจะนำเอา source code หรือ packages ต่างๆทั้งหมด ขึ้น server ใน version production บางครั้งเราอาจจะไม่ต้องการ
ไฟล์ขยะหรือไฟล์ที่เกิดจากขั้นตอนในการ development เราสามารถ config และ lock ไฟล์พวกนี้ได้จากไฟล์นี้
phpunit.xml
เป็นไฟล์ที่เก็บ ค่า config ของ PHP Unit testing framework
server.php
ใน PHP version 5.4 มี feature หนึ่งเรียกว่า PHP Internal Server หรือ Internal server ที่มีไว้เพื่อการพัฒนาเท่านั้นไม่สามารถ
นำมันมาใช้ใน production ได้ ถ้าใครเขียน ASP.NET ก็จะมี feature นี้ใช้ใน Visual Studio มานานแล้ว (ASP.NET Development
Server) Laravel ก็สนับสนุนการสร้าง Internal Server นี้ โดยการใช้ คำสั่ง start server ดังนี้
| Code |
| php -S localhost:8000 server.php |
หรือ สามารถ เรียกได้โดยตรงจาก Artisan Command Line
| Code |
| php artisan serve |
Ref:
http://laravel.com/docs/installation
https://packagist.org/
http://stackoverflow.com/questions/16919920/what-is-the-purpose-of-the-server-php-file-in-laravel-4
http://www.codecoo.com/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%95%E0%B8%B4%E0%B8%94%E0%B8%95%E0%B8%B1%E0%B9%89
%E0%B8%87-laravel-4-php-framwork/
ขึ้นไปด้านบน
