發表文章

目前顯示的是 一月, 2013的文章

[JavaScript] 將 CSV 檔案轉換成 JSON 資料

我們在拿到客戶提供的資料的時候常常會拿到 excel 檔案(這算幸福的)
至少我們可以簡單的利用一些軟體轉成 csv丟進資料庫裡處理。如果搭配個後端 API 基本上資料都不會是太大的問題可以做成 JSON 供 JavaScript 使用,但是如果在沒有後端或是資料庫的環境中呢?


首先我們先把 csv 檔案放到 server上 利用 $.get() 取得內容,接著將內容String 丟進我們待會會用到的 csvJSON 外掛 function 中。就會取得 JSON
但是這個時候的 JSON 還是 String 的形態所以還無法被解析,我們再加個 JSON.parse() 就可以拿到整個 JSON 物件摟!


function 來源:
https://gist.github.com/iwek/7154578

php 執行 csv 匯入(支援中文)

其實php本身就有內建 fgetcsv 的函式,不過可惜的是中文解析(針對big5)會有問題,如果編碼是utf-8就不會
在網路上面有找到一個自己寫的function

PHP fgetcsv讀取CSV檔案(支援中文語系)

我自己再多加上$_line = iconv("big5","utf-8//ignore",addslashes($_line));
就變成了

function __fgetcsv(&$handle, $length = null, $d = ",", $e = '"') { $d = preg_quote($d); $e = preg_quote($e); $_line = ""; $eof=false; while ($eof != true) { $_line .= (empty ($length) ? fgets($handle) : fgets($handle, $length)); $itemcnt = preg_match_all('/' . $e . '/', $_line, $dummy); if ($itemcnt % 2 == 0){ $eof = true; } } $_line = iconv("big5","utf-8//ignore",addslashes($_line)); $_csv_line = preg_replace('/(?: |[ ])?$/', $d, trim($_line)); $_csv_pattern = '/(' . $e . '[^' . $e . ']*(?:' . $e . $e . '[^' . $e . ']*)*' . $e . '|[^' . $d . ']*)' . $d . '/'; preg_match_all($_csv_pattern, $_csv_line, $_csv_matches); $_cs…

codeIgniter 環境配置 將welcome 改為index

圖片
當我們一開始下載下來 CodeIgniter 以後,會發現它的初始路徑是用 controllers 中的 welcome.php 開始,這件事讓我感到非常的不愉快,怎麼看怎麼覺得奇怪,於是我在 config 資料夾中的 rotues.php 找到這個設定值:
$route['default_controller'] = "welcome"; 原本以為這樣就大功告成了,不過卻出現了另一個問題,如下圖



Severity: Notice
Message: Undefined property: Index::$load
Filename: controllers/index.php
Line Number: 8
這就奇怪了,經過反覆確認 controllers 和 view 的對應並沒有錯誤,問題出在哪裡呢?
原來 Index 是保留字,也就是說 codeIgniter 是不允許我們使用 index 當作 controllers 的。不過我們只要寫成這樣:
class Index extends CI_Controller {
public function __construct()
{
parent::__construct();
// Your own constructor code
}
} 一樣也是可以用的喔


參考資料
http://codeigniter.org.cn/forums/thread-9556-1-1.html
http://www.codeigniter.org.tw/user_guide/general/reserved_names.html

讓 CodeIgniter 變成中文

圖片
前一篇我們提到CodeIgniter是一個中文文件很完備的應用程式框架,不過在下載的時候預設還是會英文版的

所謂英文版的~~就是差在一些他預設的錯誤訊息,如果你覺得看起來就是令人不開心,想要來點正體中文的話,其實也是可以的

Step1.先下載CodeIgniter主程式
Step2.下載中文語系檔
http://www.codeigniter.org.tw/downloads



Step3.修改成中文語系 a.找到 system/language/  把中文語系檔丟進 zh-TW 資料夾 b.找到 application/config 的 config 檔,更改 $config['language'] = 'zh-tw'; 就好了(沒意外的話應該會在72行左右)

完畢!

CodeIgniter 讓我們開始 PHP 的MVC架構吧

喊著要用傳說中的應用程式框架已經很久了,一直都沒有真的去用他,現在要下定決心開始選一套來用。就用CodeIgniter吧!

選用 CodeIgniter的理由其實挺單純的

中文化的說明文件:有一堆人在幫忙編輯中文官網上面的中文化,讓中文的說明接近完整(我終於看得懂了)免安裝,這個也相當重要,相較於另一套常見的Zend他的安裝方式相對簡單,只要把資料夾放上去就對了同樣採用MVC架構,和Zend相同CodeIgniter也是使用MVC架構下去建構 目前看起來比不過Zend的部分是~看起來他並沒有像Zend那麼完整的函示庫就是了,不過我本身覺得算是夠用了。
CodeIgniter中文官網 http://www.codeigniter.org.tw/
CodeIgniter中文官方手冊 http://www.codeigniter.org.tw/user_guide/