PHP 5.4

PHP 5.4 前幾天正式釋出了:「PHP 5.4.0 released!」,新增與改變了很多東西。

有些蠻值得注意的地方:

  • safe mode 與 magic quote 都消失了,升級後需要重新檢查 php.ini
  • array_combine(array(), array()) 不再傳回 FALSE 了,總算是傳回 array()
  • 可以用 [] 表示 array() 了。
  • function 傳回 array 後可以直接對 array 取值,也就是 foo()[0] 變合法語法了。
  • new 完後可以直接 call function 了,也就是 (new Foo)->bar() 變合法語法了。
  • 內建 web server。

另外記憶體使用量以及效能都有巨大的改善,尤其是對物件的 method 效能改善很多,這對 framework 是好消息。

不過應該還是等 5.4.1 之後再用吧,剛出來的這幾個版本應該有不少人會踩到地雷需要修正...

滲透測試...

Slashdot 上看到「Stealthy Pen Test Unit Plugs Directly Into 110 VAC Socket (Video)」這東西...

看圖片與規格資料,應該是接一個 110 伏特的電,然後插入一張 3G SIM 卡,就可以透過 3G 的頻寬管理這顆盒子。理論上可以完全被動收無線網路訊號,把收到的資料透過 3G 丟出來... 超棒的滲透工具?XD

無線網路強制上 VPN 應該是常見的解法了...

The Pirate Bay 將全面 Magnet 化...

The Pirate Bay 宣佈將所有的 .torrent 拿掉,改用 Magnet URI:「No more torrents=no changes anyhow」,另外可以參考「The Pirate Bay, Now Without Torrents」這篇。

不過也不是全部拿掉。只有當 .torrent 檔被十個人下載後,The Pirate Bay 才會將 .torrent 下載轉成 Magnet URI 的形式提供後續服務,以確保有足夠的使用者擁有 torrent 檔。這樣使得 The Pirate Bay 的頻寬用量降低,並且拉高阻擋的難度。

PS:imgur 剛好掛掉了,等恢復後再把上面的圖換成 imgur...

Update:imgur 恢復了...

Chrome 的 webRequest...

在變成標準前又改了一次...

Google Chrome 17 後,「Web Requests」從 Experimental API 變成正式的 API,有不少地方在這次轉成正式 API 後需要修改:

  • 本來 chrome.experimental.webRequest 都改成 chrome.webRequest
  • 需要加上 webRequest permission,如果有 blocking 行為則要再加上 webRequestBlocking permission。
  • API 呼叫的參數可能會不一樣,參考官方的文件的說明比較清楚。我遇到的是使用 onBeforeRequest.addListener 時需要多加上 urls 參數。
  • 不再需要 expiermental permission,不過沒拿掉不影響運作。

Chrome Web Store 上面已經可以看到一些跟控制 Referrer 有關的延伸套件了...

硬碟產量...

Slashdot 的「Hard Drive Shortage Relief Coming In Q1 2012」這篇提到 2012Q1 (就是現在這季) 的硬碟產量回穩,算算時間也的確差不多了...

不過讓我想紀錄的是一開始的這段:

"According to new reports [note: source article at DigiTimes],

Slashdot 上對 DIGITIMES 有種「...」的感覺,每次看他們引用 DIGITIMES 都很好笑 XD

AT&T 因限制使用者 iPhone 使用量被告,判罰 $850 美金

Slashdot 看到 iPhone 使用者使用 AT&T 所提供的 Unlimited data plan,但卻因為使用量過大而被限速,於是控告 AT&T 勝訴的案例:「User Successfully Sues AT&T For Throttling iPhone Data」,不過這件案子還可以上訴。

雖然有線與無線的架構差很多,但這讓我想到「NCC通過20M光纖費率 但不准中華電信限速」這則 2009 年的報導,以及「3G上網太慢 中華電信擬提回饋方案」、「重度行動上網用戶調高收費案 中華電信暫時喊卡」這兩則去年的新聞...

Apache 2.4...

如果要知道 Apache 2.4 有哪些與 2.2 不同的地方,看官方提供的「Overview of new features in Apache HTTP Server 2.4」會比起看新聞網站清楚。

對每個 SA 來說,重視的地方都會不太一樣。我認為有幾個比較重要的:

  • Event MPM:如果有 Event MPM,有機會比 Thread-based 的 Worker MPM 更省資源。
  • Asynchronous support:在 Event MPM 下一定要有的改善。
  • Reduced memory usage:要看看比起 2.2 可以省多少。
  • mod_proxy_fcgi:這樣就不需要 mod_fastcgi 了。
  • mod_remoteip:這樣就不用 mod_rpaf2 了。
  • mod_ratelimit:有點虛的功能,不過還是可以加減用用。

會選擇 Apache 其實最重要的原因是 .htaccess,他的效率只要好到使用的資源可以被 PHP 忽略就行了...

iTerm2 + screen (FreeBSD 上) 的 256 色

我家裡有兩台桌機在用,一台是跑 Ubuntu 11.10,另外一台是 Mac Mini (上面是 10.7),雖然 Mac 的字比較好看,但平常主要開發都還是在 Ubuntu 上,因為搞不定 iTerm2 過 GNU Screen 後只剩下標準 16 color 的問題...

中間找問題的過程就跳過去 (也忘的差不多了),最後是在「Report Terminal Type」這邊找到解法,本來是「xterm-256color」,改成「xterm」後 screen 內的 256 色就出現了:

John Carmack 在 1995 年的 28" 1920×1080 螢幕...

有點舊的消息,之前看到有人提但當時沒有寫 blog,最近又看到這張圖...

這是 John Carmack (id Software 創辦人) 在 1995 年所拍攝的 1920×1080 CRT 螢幕,吃電能力高達 180W:「John Carmack coded Quake on a 28-inch 16:9 1080p monitor in 1995」...

以時間點來算,這應該是開發 Quake 系列所用的螢幕...