Я создаю сайт для загрузки, и я пытаюсь установить доступ к определенным загрузкам в зависимости от компании, для которой работает пользователь. При настройке разрешений компании я пытаюсь получить информацию из базы данных, чтобы сказать, имеет ли она доступ или нет. Я использую метод из класса для поиска корреляции компании и программного обеспечения и размещения его в массиве. Затем я пытаюсь получить доступ к определенному значению внутри этого массива, но все, что я получаю, это предупреждение "Пытаться получить свойство не-объекта". Я не знаю, где я ошибаюсь.
Метод класса
public static function locateAccess($company, $software)
//find the access a company has to a particular software
{
$sql = "SELECT * FROM software_access WHERE software_company_id = '$company'";
$sql .= " AND software_software_id = '$software'";
return self::findQuery($sql);
}
Код на странице
$access = SoftwareAccess::locateAccess($companyId,$accessName);
$allowed = $access->software_access;
Выход с дампом Var
array(1) {
[0]=> object(SoftwareAccess)#34 (4) {
["software_access_id"]=> string(2) "22"
["software_company_id"]=> string(1) "3"
["software_software_id"]=> string(1) "4"
["software_access"]=> string(1) "1"
}
}
Примечание. Попытка получить свойство не-объекта в C:\xampp\htdocs\RMS\public\companyAdmin.php в строке 136
Как вы видите, объект существует в массиве, и я использовал аналогичную функциональность в других частях моего сайта.
Любая помощь очень ценится
Вам нужно сделать, как
$ Доступ [0] → software_access;
$access[0]->software_access;
? Переменная$access
является массивом с одним объектом внутри.