【codeigniter json】採用 json 讓 javascript 與 codeigniter php 互相溝通

動機同 codeigniter 允許 uri 特殊字元
這次紀錄一下嘗試過的傳值方法


解決方案

讓 codeigniter 直接回傳 json 給 jquery 做處理
使用者操作完 ui 以後,由 jquery 拼出 json 格式
倒回給 codeigniter 存成 .json 檔案


codeigniter → jquery ajax 處理 json

讀取 .json 直接印出

$this->load->helper('file');
$jsonstring = read_file("./path/to/name.json");
print $jsonstring;

創造 array 然後轉成 json 印出

$array = array(1,2,3,4,5);
print json_encode($array,JSON_UNESCAPED_UNICODE);
如果不想看到 htmlcode ,帶上 JSON_UNESCAPED_UNICODE 吧,那不是人類看的懂得

直接調用 getJSON

$.getJSON('http://domain/controller',function(data){
    var long = data.length;
    for(var i = 0;i < long ;i++){
        data[i]["name"];
 }
});

jquery → codeigniter 處理 json

直接 get 傳值存成檔案

jquery 傳值

var obj = [1,2,3,4,5];
var post_array = {"string":JSON.stringify(obj)}
$.get('http://domain/controller', post_array); 
傳之前記得用 JSON.stringify 把 array 轉成 json
然後隨便帶個 index 送 get 給 controller

php 接值

$this->load->helper('file');
write_file('./path/to/name.json', $this->input->get('string'));
直接寫檔不解釋

留言