<?php
$arr = [
0 => [
"category" => "red",
"price" => 95
],
1 => [
"category" => "blue",
"price" => 85
],
2 => [
"category" => "red",
"price" => 75
]
];
$result = array();
foreach($arr as $k=>$v){
$key = $v['category'];
if(!array_key_exists($key, $result)) $result[$key] =array();
$result[$key][] = $v;
}
var_dump($result);