Reputation: 383
How can i wrap my return array into string in laravel? Some thing like this
Laravel:
$columnDefinitions = array();
$columnDefinition = new \stdClass();
$columnDefinition->label = "No";
$columnDefinition->sortable = true;
$columnDefinition->thClass = 'width-50';
$columnDefinition->tdClass = 'text-center';
//end add custom css
$columnDefinitions["index_number"] = $columnDefinition;
return $columnDefinitions;
Expected result
'[{
apple: {
label: "No"
sortable: true
tdClass: "text-center"
}
}]'
Upvotes: 0
Views: 709
Reputation: 6568
use this:
$columnDefinition = new stdClass();
$columnDefinition->label = "No";
$columnDefinition->sortable = true;
$columnDefinition->thClass = 'width-50';
$columnDefinition->tdClass = 'text-center';
$column = new stdClass;
$column->apple = $columnDefinition;
$finalArray = [$column];
//end add custom css
return json_encode($finalArray);
Upvotes: 0
Reputation: 5682
As per the Laravel Documentation you can directly send the json
response from your method
The json method will automatically set the
Content-Type
header toapplication/json
, as well as convert the given array to JSON using thejson_encode
PHP function:
return response()->json([
// You can pass your array values here
]);
Laravel -> Http Responses -> Json Responses
Upvotes: 2
Reputation: 1188
seems like you are trying to make an array of object with an object attribute?
try this:
$columnDefinitions = array();
$columnDefinition = new \stdClass();
$columnDefinition->label = 'No';
$columnDefinition->sortable = true;
$columnDefinition->thClass = 'width-50';
$columnDefinition->tdClass = 'text-center';
$appleDefinition = new \stdClass();
$appleDefinition->apple = $columnDefinition;
//end add custom css
$columnDefinitions[] = $appleDefinition;
return json_encode($columnDefinitions);
Upvotes: 0