2017-01-31 13 views
2

エンティティを文字列としてHTMLコンテンツを返すようにコントローラを変更するにはどうすればよいですか?LaravelがJSONデータのhtmlEntitiesを返さないようにするにはどうすればよいですか?

私は例

{content: "<p><strong>PART TIME MAINTENANCE</strong>"} 

のための私のコールバック値のいずれかでHTMLエンティティとHTMLを受けています、私は解決策がこれを使用することを伴うと思います。

HTML::decode('<h1>Hello</h1>'); 

これは私のコントローラがやっていることです、私はそれが私が欲しいものを返す方法を理解していません。いくつかの時間を過ごした後

class JobController extends Controller{ 
public function index(){ 
    $dt = Carbon::now(); 
    return Response::json(Jobs::where("page_location","=","InternalJobPosting")->where("active","=","1")->where('start_date',"<=",$dt)->where("end_date",">=",$dt)->get(),200); 
} 
public function show($id){ 
    return Response::json(Jobs::where("id","=",$id)->first(),200); 
} 

}

答えて

0

I)は、(私は配列に返されたデータをマッピングしがhtml_entity_decodeを使用してHTMLエンティティを変換することができ考え出しました。

public function index(){ 
    $dt = Carbon::now(); 
    $jobs = Jobs::where("page_location","=","InternalJobPosting")->where("active","=","1")->where('start_date',"<=",$dt)->where("end_date",">=",$dt)->get() 
    ->map(function ($job) { 
     return [ 
      'id'=>$job->id, 
      'active'=>$job->active, 
      'content'=>$job->content, 
      'category'=>html_entity_decode($job->category), 
      'page_location'=>$job->page_location, 
      'page_title'=>$job->page_title, 
      'start_date'=>$job->start_date, 
      'end_date'=>$job->end_date, 
     ]; 
    }); 


    return Response::json($jobs,200); 
} 
public function show($id){ 

    $job = Jobs::where("id","=",$id)->get() 
     ->map(function ($job) { 
     return [ 
      'id'=>$job->id, 
      'active'=>$job->active, 
      'content'=>html_entity_decode($job->content), 
      'category'=>$job->category, 
      'page_location'=>$job->page_location, 
      'page_title'=>$job->page_title, 
      'start_date'=>$job->start_date, 
      'end_date'=>$job->end_date, 
     ]; 
    }); 
    return Response::json($job->first(),200); 
} 
関連する問題