Ruby分類文章 顯示方式:簡文 | 列表

2009年11月12日

PHP程序員開始寫Ruby程式的函數參考網站

工商服務時間。PHP程序員學了Ruby語言後,如果想開始動手寫程式,很快就會發現許多在PHP用慣了的函數,在 Ruby 中並沒有同名的函數。然後初學Ruby的滿腔熱血,就在翻找 Ruby 手冊的過程中降溫。這實在是令人遺憾的事。如何避免這種事情發生呢?

就讓我來介紹一個很好的參考網站,那就是「Rails for PHP Developers」。幾乎八成常用的PHP函數,都可以在那找到對應的Ruby API。你只要在該網站的搜尋欄中輸入你想查的 PHP 函數名稱,若該網站有整理,它就會告訴你這個 PHP 函數對應的 Ruby API 是什麼,還附帶程式範例。如下圖所示。

rails for php developers sample

我前陣子將我以前寫的一些PHP工具程式用Ruby改寫時,靠這個網站省下許多翻手冊的時間。我相信有了它之後,PHP程序員開始寫Ruby程式時,會感到相當愉快。

PS. 我仍然很喜歡PHP。只是身為一個程序員,擁抱三四種程式語言是很正常也很合理的。


Posted by shirock at 樂多Roodo!21:55回應(1)引用(0)
標籤:Ruby,PHP

2007年06月28日

Block and Proc

Tags: block proc closure function

Ruby 可以將程式碼參數化,Ruby 稱被參數化的程式碼為 block 。Ruby 語法以 {||} 表示一個 block ,其中的 || 為參數列宣告,若無參數則可省略。

Ruby 的 Proc 類似 ECMAScript 的 Function。在 ECMAScript 中使用關鍵字 function 即可配置一個 Function 實例。 Ruby 則使用 Kernel::procKernel::lambda 方法 (兩者相同) 或是直接建構一個 Proc 實例(Proc.new),需提供一個 block 作為引數。

Ruby: proc { |arguments| codes }
ECMAScript: function(arguments) { codes }
...繼續閱讀

Posted by shirock at 樂多Roodo!17:03回應(0)引用(0)

2007年04月20日

檔案插入指定字串(Find 與檔案操作)

Tags: Find Google_Analytics

日前為了掌握公司網站內容的使用狀況,以公司帳號申請了 Google Analytics 服務 (See also: 部落格小玩意5: 加入 Google Analytics 分析程式碼)。接著就要將 Google 提供的 Analytics 程式碼植入網站的網頁中。然而公司網站早期係以靜態網頁形式建置,每個網站下包含子目錄,擁有數十個靜態頁面內容。若以人工作業方式植入甚為不便。故以 Ruby 撰寫一個小程式,掃描指定目錄之下的所有網頁內容,將 Google Analytics 程式碼植入不含 Analytics 程式碼的網頁中。

...繼續閱讀

Posted by shirock at 樂多Roodo!15:24回應(0)引用(0)

2007年04月12日

以 REXML 將 CSV 文件轉換成 MS Excel 2k/XP XML 文件

Tags: ruby xml spreadsheet

本文示範以 Ruby 標準庫 REXML 實踐 MS Excel 2k/XP XML 文件之匯出工作。首先讀取一個 CSV 文件 test.csv,再以 REXML 建立一份 XML 文件實例,接著按 MS Excel 2k/XP 之 XML 文件結構,將自 CSV 讀取之資料存入 XML 文件實例,最後儲存為 test.xml 。該文件可以 MS Excel 2k/XP 讀取。

關於 MS Excel 2k/XP XML 文件之相關訊息,請見《A note of creating XML document by SimpleXML》。

...繼續閱讀

Posted by shirock at 樂多Roodo!16:33回應(0)引用(0)

字元編碼轉換、基本檔案讀取與建立壓縮檔

ruby iconv file

Ruby 練習程式。讀取UTF-8編碼文字檔,轉換成Big5編碼後顯示。開啟檔案後分別以 Loop 式的 gets, Iterator 的 each, 以及一次讀入陣列的 readlines 三種形式操作。再以封絕(Closure)方式完成開啟、讀取及轉碼輸出。最後嘗試以 popen 進行管線(pipe)操作,呼叫壓縮工具將轉碼後的資料壓縮儲存。

...繼續閱讀

Posted by shirock at 樂多Roodo!15:57回應(2)引用(0)
 [1]