Mark's Place

A place for Mark's murmuring, blah, blah, blah, ...

Mark's Place
Watch Timeline
http://blog.markplace.net/marks_place/15/2008/11/14/395

我們真的都那麼容易被煽動嗎?

Mark Wu 發表於 2008/11/14 23:49 · 靜態連結網址

我們真的都那麼容易被煽動嗎?。對!真的就有那麼容易。

最近有消息說到 Yahoo 不準用帳號裡面有 taiwan 或是 taipei 等字眼來註冊,很多人就開始磨刀霍霍向 Yahoo,開始說 Yahoo 不尊重台灣人云云。我無法證實 Yahoo 到底有沒有這樣的想法,但是從程式角度來說,這純粹是 Yahoo 的 bug 吧(或說是把規格定的太嚴謹了)。

要判斷帳號裡面有沒有某些字串,在 PHP 裡面的寫法通常是:

$pattern = "taiwan";
if( !strstr( $userName, $pattern ) )
... 註冊程序 ...

或是用

$pattern = "taiwan";
if( !strpos( $userName, $pattern ) )
... 註冊程序 ...

或者還可以用

$pattern = "/taiwan/"
if( !preg_match( $pattern, $userName ) )
... 註冊程序 ...

這些寫法,不僅無法讓使用者用 taiwan 來註冊,當然也無法用 ilovetaiwan 或是 iliveintaiwan 來註冊。

而這個只要調整一下程式,應該馬上就可以解決了。

$pattern = "taiwan"
if( $userName != $pattern ) )
... 註冊程序 ...

為什麼 Yahoo 要這樣做?假設你的網站允許使用者有次網域,請問你允不允許使用者的網址是 admin.yahoo.com 還是 webmaster.yahoo.com,這會不會讓人誤會這兩個網址是 Yahoo 的官方網站?

所以~當然你還是可以繼續相信這是 Yahoo 故意欺負台灣人;而我比較想相信這應該是無心的 bug。

不過也還好有那麼多人討論這件事,Yahoo 才願意把這個 Bug 修正吧!

真實引用網址:

http://blog.markplace.net/trackback.php?id=395

迴響 (5) · 引用 (0) 文章分類: 可以做人幹嘛寫程式

迴響 ↓

發表迴響
 authimage