Laravel Homestead 2.1.5 版本將不再刪除舊有資料庫

Laravel PHP Framework

Laravel Homestead 提供一套虛擬機器,讓開發者可以快速將 Laravel 環境架設起來。在 2.1.5 版本以前,要新增新的 Site 都會透過修改 yaml 設定檔後,直接下 homestead provision 來重新啟動 VM,問題就來了,此指令會將現有的 Database 全部刪除,重先建立一次,這樣開發者就要重新跑 DB Migration 才有資料。此問題作者聽到了,所以在 2.1.5 版本作者拿掉 Drop Database 指令,而是透過 CREATE DATABASE IF NOT EXISTS 來取代原有指令 (下面程式碼),這樣開發者就不用擔心資料會被刪除。當然作者也很貼心,如果開發者想要清除整個資料庫,一樣可以透過指令 homestead destroy 來將整個 VM 刪除即可。

// 取代原有 mysql -uhomestead -psecret -e "DROP DATABASE IF EXISTS \`$DB\`";
mysql -uhomestead -psecret -e "CREATE DATABASE IF NOT EXISTS \`$DB\` DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci";

詳細的資訊可以參考 official documentation,或參考最近修改的 commit 內容

Laravel 5.1 is released

很高興昨天收到 Laravel 釋出 5.1 版本,此版本在 Laravel 發展過程中第一個長期支援的版本,底下我們就來看看 Taylor Otwell 作者在此版本釋出有什麼新功能或變化。

[Read More]

Laravel 5 PHP Framework 釋出

Laravel PHP Framework

很開心看到 Laravel 作者 Taylor Otwell 能在年前公開 Laravel 5 is Released!,這次連官網也順道一起改版了,經過幾天努力,Laravel Taiwan 也將官網換成新的了,這次 Laravel 5 共釋出 22 個新功能,前端部份也導入新功能叫做 Elixir,另外也將 Scheduler 納入主功能了,非常開心能看到作者開發了好多新功能。由於 Laravel 5 出來了,那接下來就是要翻譯新的文件,請大家可以到 Hackpad 登記翻譯,翻譯完成後送 PR 到 Laravel Taiwan documentation Repo,基本上翻譯過 4.2 版本,把差異性部份補上即可。

Laravel 5 新功能可以直接到 Laracastslaravel 5 Fundamentals 教學影音。

加速 PHP Composer 執行效率

logo-composer-transparent

早上剛起床就看到 DK 發表一篇增加一行程式碼讓 PHP Composer 效率爆增Composer 是 PHP 套件管理工具,現在各大 Framework 都用 Composer 管理套件相依性,但是最讓人擔憂的是,每次執行 composer install 或 update 的時候,機器就會開始哀號,然後等了很久指令才執行完成。今天看到 Github 上 Composer 為了改善執行效率及時間就把 gc disabled。這 commit 引發了很多人迴響,超多搞笑留言圖片。底下有兩種方式可以加速 Composer 執行效率

[Read More]

Laravel Homestead 開始支援 HHVM

Laravel PHP Framework

Laravel News 看到這篇 Laravel Homestead – Now with HHVM,也就是官方 Homestead 開始支援 HHVM,現在可以直接透過底下指令升級 Box:

$ vagrant box update

版本會從 0.1.8 升級到 0.1.9,升級過程需要一段時間,最後要啟用 HHVM 服務,請在 Homestead.yaml 加入底下設定

sites:
  - map: homestead.app
    to: /home/vagrant/Code/Laravel/public
    hhvm: true

不用煩惱架設 HHVM 環境了,對開發者真是一大幅音。

快速安裝 Laravel Homestead 環境

Laravel PHP Framework

在看本篇安裝教學前可以參考翻譯完成的 Laravel Homestead,此篇會紀錄如何在 Ubuntu 底下快速架設 Laravel 環境,對於一般新手而言,剛開始安裝 Laravel 開發環境一定會遇到許多問題,為了解決開發環境,Laravel 推出 Homestead 搭配 Vagrant Box,讓初學者不用為環境問題而煩惱,減少浪費時間在架設 Laravel。簡單來說 Laravel Homestead = Vagrant + VirtualBox + Laravel 安裝包。底下簡單幾個步驟就可以完成 Laravel 開發環境。

[Read More]

Laravel 4.2 繁體中文文件完整上線

Laravel PHP Framework

Laravel 是目前最火紅的 PHP Framework,但是對於第一次接觸 Framework 的使用者,安裝或學習方面一定會遇到重重困難,而為了降低學習門檻,網路上集結很多好朋友一起加入翻譯,經過了半年時間,快速的完成 4.2 版本的翻譯文件,雖然 4.3 版本在年底即將推出。這次要好好感謝 Facebook Laravel Taiwan 群組,透過台北的小聚會來定期 review 及分配翻譯項目,才可以在這麼短的時間完成翻譯內容,果然團結力量大。目前線上內容已經翻譯完成,但是還需要網路上各位大大來潤稿,Laravel TW 的 Github 在這裡,若要參與翻譯,請直接看 Docs Repo,有人常常問我,不會 Git 可以幫忙嗎?答案是當然可以阿,可以直接將介面切換到瀏覽模式,找到底下符號,按下編輯,修改完成,拉到底下按下送出就可以了喔

[Read More]

Laravel 不同開發環境設定

Laravel PHP Framework

Laravel 本來預設的 Environment Configuration 是透過 Domain Name 來區分,程式碼 bootstrap/start.php 如下

detectEnvironment(array(
    'local' => array('your-machine-name'),
));

我們可以根據上述程式碼產生不同的開發環境,像是 develop, production, staging… 等,根據不同的 Domain 給予不同的環境設定檔。但是根據使用 Domain Name 來區分各種不同的環境換產生兩種問題

[Read More]

Laravel 搭配 Memcached Cross Domain Session

Laravel PHP Framework

Laravel 提供了 filecookiedatabasememcachedarray 五種方式來存取 Session,預設的使用方式會是 file 存取,如果要跨 Domain 存取 Session 基本上只要設定 php.ini 裡面的 Session 相關參數即可,請注意底下 3 個參數。

[Read More]