when i print $results i get the array as below which i want to filter and use part of it for different output
$stmt = $sqlselect->fetchAll(PDO::FETCH_ASSOC);
$results = [];
foreach ($stmt as $key => $value) {
$results[$key] = $value;
}
print_r($results);
Array
(
[0] => Array
(
[id] => 2
[employee] => 1
[startdate] => 2022-02-01
[enddate] => 2022-02-28
[evaluatedby] =>
[evaluationdate] =>
[evaluation] =>
[submitted] => 0
[attachment] =>
[jobtitle] => Software Developer
[department] => Planning & Development
[knownas] => Mike
)
[1] => Array
(
[id] => 2
[employee] => 1
[startdate] => 2022-02-01
[enddate] => 2022-02-28
[evaluatedby] =>
[evaluationdate] =>
[evaluation] =>
[submitted] => 0
[attachment] =>
[jobtitle] => Administrator
[department] => Accounts
[knownas] => Mike
)
)
i want to break/filter the $results to look like the following array so that i can use it on different part of my code.
Array
(
[0] => Array
(
[knownas] => mike
[department] => Planning & Development
[jobtitle] => Software Developer
[id] => 2
[startdate] => 2022-02-01
[enddate] => 2022-02-28
)
[1] => Array
(
[knownas] => Mike
[department] => Accounts
[jobtitle] => Administrator
[id] => 2
[startdate] => 2022-02-01
[enddate] => 2022-02-28
)
)
i tried this.
$array = ['name','department','jobtitle','id','startdate','enddate'];
$filterarray[] = array_filter($results, function($key) use ($array)
{
return in_array(array('name','department','jobtitle','id','startdate','enddate'),$key);
});
print_r(json_encode($filterarrays));
when i run it return an empty array. is the a way i can get around this.