notaBlueScreen - DRUPAL 教學 / UI
PHP 5.4 Object 及 Array dereferencing
PHP 5.4 Array 短語法
PHP 5.3 或更舊版本:
$array = array(1, 2, 3);
$fruit = array('S' => 'Strawberry', 'A' => 'Apple', 'O' => 'Orange' );
PHP 5.4 或更新版本:
$array = [1, 2, 3]; $fruit = ['S' => 'Strawberry', 'A' => 'Apple', 'O' => 'Orange'];
主要是 array() 變為 [],更像 Javascript / Python 等程式語法,輸入起來方便多了。(如果 => 變能為 : 更好)
{ 閱讀更多 }試玩 PHP5.4 與內置伺服器 (PHP5.4 & Build-in Server)
PHP 5.4 內置了簡單的伺服器功能,在生產環境中未必能應用到。但作測試極方便,大家來玩一玩:
-
下載 VC9 x86 Thread Safe 的 ZIP 版本:
http://windows.php.net/download/ (我是不會教你解壓的) -
啟動 SERVER:
通過 Windows 的命令行工具 CMD 執行 "php -S localhost:80" 就會啟動 SERVER
如要指定根目錄:php -S localhost:80 -t public_html
以上都不過癮!更有趣的是,現有大多程序都既於 Apache,必需 .httacess,每次你使用 NGINX 面對那一堆 REWRITE RULES 是不是頭痛。在此,竟有人嘗試為 PHP SERVER 寫一個相容的 Router Script:
{ 閱讀更多 }NODEJS Windows 安裝三步曲
Node JS Windows 版本推出後,安裝簡易很多,但一開始使用 require() 就碰釘,希望以下三步曲幫到你 :)
1. 下載: http://nodejs.org/

2. 安裝: 不停按 NEXT

{ 閱讀更多 }
增減 Drupal HTML HEAD 的資訊 (Meta Tags & LINKs)
Drupal 頁面的 HTML <head> 有一堆 META TAGs 及 LINKs。這都是經 html.tpl.php 的 $head 輸出 ( $head = drupal_get_html_head() )。您可經由 hook_html_head_alter 修改其內容,比如要刪除 Drupal 的版權及版本宣告:
{ 閱讀更多 }Drupal 8 會有什麼改變?
Drupal 7 差不多一周歲了,使用率也很高,根據 Drupal.org 的資料,D6 & D7 的數據差不多。模組的成熟度也不差,我這邊有相關數據,大家可以分析分析。
即使如此,還有不少個人開發者留戀 Drupal 6,甚至企業也有那方向傾向。或許,對於一些管理公司內部系統的開發者,並沒有必要升級或使用 Drupal 7,他們也許跳過此步,邁向 Drupal 8。在繁體中文世界而言,這也可能反映了相關翻譯處於緩慢或停滯狀態的原因 ?
Drupal 8 開發也近一年,有不少改變,做一個小總結,大家可以參考參考:
Backend:
{ 閱讀更多 } { 8 個回應 }Drupal: 殺掉討厭的權重下拉表單
如果你像我一樣很討厭這種長長的權重下拉表單 (Weight Options),Drupal 7.11 及以後的版本能很簡單殺死它。

只要將 Drupal 中的 Variable: drupal_weight_select_max 改變就可以。(@see form_process_weight)
比如在 settings.php 中加入:$conf['drupal_weight_select_max'] = 0
{ 閱讀更多 }Drupal Devel 模組: 你可能不知的事...
大家經常使用 dpm() 嗎?
你知不知雙擊相關的列會顯示出 PHP Array / Object ..

dd() 你用過嗎 ?
dd($node) 可以將 $node Object 寫到系統暫存資料夾 (admin/config/media/file-system) 的 drupal_debug.txt 檔案中。不要再那麼傻,自己寫 file_put_contents... 哦...
相信 Linux 下的 tail -f /tmp/drupal_debug.txt 你也會用了 :)
ddebug_backtrace() 又如何 ?
PHP 中的 debug_backtrace 用慣了,不如試試 Drupal 下的 ddebug_backtrace(),如:
{ 閱讀更多 }
