xhrPostのhandleAs jsonでレスポンスが取れなかった

下のようなコードで、
json_encode($var)をreturnしているのに、
client側で、xhrPostのerrorハンドラでsyntax errorとでた。
syntax errorとなるということは、server側で何らかのエラーが出ているということだろうと、

いろいろやったが、上手く行かなかった。

chromeデバッグしていたが、
firebugajaxの通信内容が分かるとこのとで、
firebugデバッグ開始!

ちょうと、そのajax通信のレスポンスを見ると
なんにもない。空。

そこで、
server側はreturnではなく、echoを使うことに気づく。

以上。

function url(){
	    
	    $is_ajax_request = false;
	    if(count($_POST) > 0){
	        $is_ajax_request = ($_POST['ajax'] === 'true');
	        if(!isset($kifuId)){
	            $kifuId = $_POST['kifuId'];
	        }
	    }
	    
	    if(!$is_ajax_request){
	        $kifuId = urldecode($this->uri->segment(3));
	    }
        
	    $kifu = $this->kifu_model->getById($kifuId);
	    if(isset($kifu)){
	        $data['success'] = 'true';
	        $data['url'] = $kifu->URL;
	    }else{
	        $data['success'] = 'false';
	        $data['content'] = $this->lang->line('error_kifu_url_not_available');
	    }
	    $string = json_encode($data);
	    //$string2 = str_replace('\/', '/', $string);
	    return $string;
	    
	}