3v4l.org

run code in 300+ PHP versions simultaneously
<?php class Teacher { public function getStudentTeacherColumn(array $data, int|string $col): array { return array_map([$this, 'myarraymap'], $data['student_teacher']); } private function myarraymap(array $studentTeacher): mixed { return $studentTeacher['user_id']; // statically accessing column to demonstrate desired output } } $data = [ 'student_teacher' => [ ['user_id' => 1, 'user_name' => 'foo'], ['user_id' => 2, 'user_name' => 'bar'], ['user_id' => 3, 'user_name' => 'bam'], ] ]; $teacher = new Teacher; var_export($teacher->getStudentTeacherColumn($data, 'user_id')); echo "\n---\n"; $col = 'user_id'; var_export(array_column($data['student_teacher'], $col));
Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.25, 8.4.1 - 8.4.13
array ( 0 => 1, 1 => 2, 2 => 3, ) --- array ( 0 => 1, 1 => 2, 2 => 3, )

preferences:
76.46 ms | 406 KiB | 5 Q