сначала я могу написать это \App\CourseStart->find(any)->students->count()
и буду работать нормально, я вынужден объединить те же переменные $object->$k->count()
$object = (`\App\CourseStart->find(any)) collation laravel
App\CourseStart {#1309 ▼
#dates: array:2 [▶]
#fillable: array:15 [▶]
#connection: "mysql"
#table: "course_starts"
#primaryKey: "id"
#keyType: "int"
+incrementing: true
#with: []
#withCount: []
#perPage: 15
+exists: true
+wasRecentlyCreated: false
#attributes: array:6 [▶]
#original: array:6 [▶]
#changes: []
#casts: []
#classCastCache: []
#dateFormat: null
#appends: []
#dispatchesEvents: []
#observables: []
#relations: array:1 [▶]
#touches: []
+timestamps: true
#hidden: []
#visible: []
#guarded: array:1 [▶]
#forceDeleting: false
}
$k = 'students' is relation
so $object->{$k} = \App\CourseStart->find(any)->students this work 100%
Illuminate\Database\Eloquent\Collection {#1310 ▼
#items: array:2 [▼
0 => App\Student {#1311 ▶}
1 => App\Student {#1314 ▶}
]
}
$object->{$k}->count();
работа получить результат "2"
$f = ['count()','','']
теперь я пытаюсь написать это $object->{$k}->$f[0]
и $object->$k->{$f[0]}
у меня есть эта ошибка сообщения
Exception
Property [count] does not exist on this collection instance.
теперь, как объединить функцию count () to $ object -> {$ k}
Не уверены, какой адрес подходит для вопроса?