CodeIgniter 3.0 Release 終於釋出啦

CodeIgniter

從 2.2.x 版本到現在的 3.0 Release,終於等到釋出大家所期待的 3.0,此版本跟 2.2.x 版本差距極大,修正很多 bugs 重構很多程式碼,官網列出底下重大修正,要嘗鮮的請直接下載

  • CodeIgniter 使用 MIT 版權宣告
  • 重構各種 Database Driver library
  • 支援 PDO 所有函數
  • 重新撰寫 Session Library,支援 Native Session
  • 重新撰寫 Encryption library
  • 已加強單元測試部分,以及改善程式碼覆蓋率
  • 官方建議使用 PHP 5.4 或更新版本,但是官方仍繼續支援 PHP 5.2.4

詳細資料,可以參考官方的 ChangeLog,如果要升級 CodeIgniter 2 到 3,請詳細參考升級文件

PS:台灣官網部分近期內會修正

Parse 支援台灣繁體中文文件

parse-logo

Parse 月初宣佈將支援簡體、繁體、日文、韓文等語系的文件,為什麼宣佈此消息呢?其實原因最大就是在 Parse 內部統計,全世界亞洲區的流量成長率高達 90 %,加上全球 15 個最大用戶內,亞洲區就佔了六個 India, Japan, Australia, China, Taiwan, Korea。沒看錯,台灣也是榜上有名。雖然不知道台灣有哪些網站用到了 Parse,我自己最主要用 Parse 的原因就是 Push Notification,公司就不用架設兩套伺服器 AppleGoogle GCM。Parse 提供了 JavaScript, PHP SDK, .NET SDK 等。台灣開發者可以直接線上看繁體中文文件了。

加速 PHP Composer 執行效率

logo-composer-transparent

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

[Read More]

CodeIgniter 終於找到新東家 British Columbia Institute of Technology 英屬哥倫比亞理工學院

CodeIgniter

自從去年 CodeIgniter 宣佈要開始找尋新東家,我就很期待下一個新東家會是誰,終於在今天公佈了新東家 British Columbia Institute of Technology 英屬哥倫比亞理工學院 (BCIT),官方也正式公佈一篇 Your Favorite PHP Framework, CodeIgniter, Has a New Home,去年到現在 EllisLab 就收到大量的候選人信件,但是困難的就是要從一堆候選人中選出一位最適合 CodeIgniter 新雇主,最後決定人選就是 BCIT,BCIT 是一間理工學院學校,裡面有超過 4 萬 8 千名學生,最重要的是,每年學校都會培養 150 名 CodeIgniter 學生,導入這套 PHP Framework 到業界。

最後會由該學校的 James Parry 擔任 CodeIgniter Project Leader,並且由每年訓練優秀的學生加入此 Project 並且持續貢獻原始碼。看到這裡應該很興奮,因為對於 CodeIgniter 3.0 看起來應該不久之後就可以問世了。新的 Repo 網址也變成

https://github.com/bcit-ci/CodeIgniter

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 不同開發環境設定

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]

升級 PHP Facebook SDK 到 4.0.x 版本

CodeIgniter

最近幫公司建立 Staging 環境,申請了新的 FB App 來,用原本 Facebook v3.2.3 SDK 發現已經不能 work 了,去翻了 Facebook Platform Changelog,看到今年 4 月 30 號以後申請的 App 會強制走 v2.0 Auth 機制,所以原本用 php sdk 3.2.3 版本的話,完全無法呼叫 Auth 2.0 API,導致整個網站爛掉,當然線上的網站是不會隨意換 App ID 及 secret,免得怎麼爆掉的都不知道。這次來教學在 CodeIgniter 轉換 PHP Facebook SDK,可以直接參考官方 4.0.0 的教學,原本 3.2.3 版本直接下載程式碼,放到 library 目錄,直接 include 就可以取得 Facebook 個人資料,4.0.0 版本以後,請先確認系統是否升級為 PHP 5.4 版本以上,並且支援 Composer 安裝,當然如果不用 Composer 也可以,只是要 include 很多檔案,真的比較麻煩。

[Read More]

Ngnix 搭配 PHP-FPM 噴 php5-fpm.sock failed (13: Permission denied)

Nginx 搭配 PHP-FPM 已經是架設 PHP 伺服器基本入門款了,這次升級 CentOS 機器完後,發現 Log 一直噴出底下訊息 nginx error connect to php5-fpm.sock failed (13: Permission denied) 透過 Stackoverflow 查到這篇解答 nginx error connect to php5-fpm.sock failed (13: Permission denied),裡面提到兩種作法,其中一解法是直接修改 /var/run/php5-fpm.sock 為 666,讓其他使用者可以直接存取此檔案,但是此作法在下次重新開機後一樣會出現同問題,最終解法請修改 /etc/php-fpm.d/www.conf 如果是搭配 Nginx 請使用底下設定 user = nginx group = nginx ; Set permissions for unix socket, if one is used. In Linux, read/write ; permissions must be set in order to allow connections from a web server. [Read More]