CodeIgniter - How to return Json response from controller CodeIgniter - How to return Json response from controller codeigniter codeigniter

CodeIgniter - How to return Json response from controller


return $this->output            ->set_content_type('application/json')            ->set_status_header(500)            ->set_output(json_encode(array(                    'text' => 'Error 500',                    'type' => 'danger'            )));


//do the edit in your javascript$('.signinform').submit(function() {    $(this).ajaxSubmit({        type : "POST",       //set the data type       dataType:'json',       url: 'index.php/user/signin', // target element(s) to be updated with server response        cache : false,       //check this in Firefox browser       success : function(response){ console.log(response); alert(response)},       error: onFailRegistered   });           return false; }); //controller functionpublic function signin() {    $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5);       //add the header here    header('Content-Type: application/json');    echo json_encode( $arr );}


For CodeIgniter 4, you can use the built-in API Response Trait

Here's sample code for reference:

<?php namespace App\Controllers;use CodeIgniter\API\ResponseTrait;class Home extends BaseController{    use ResponseTrait;    public function index()    {        $data = [            'data' => 'value1',            'data2' => 'value2',        ];        return $this->respond($data);    }}