Получить имя класса из Php::Value в PHP-CPP
Работая над небольшим расширением для PHP с использованием PHP-CPP, я получаю на стороне C++ массив с объектами, и мне нужно получить его имя класса. У объекта Php::Value, похоже, нет никакого метода для этого.
Как и в HNI в этом расширении: https://github.com/mcuadros/bson-hni/blob/master/src/encode.cpp#L86
1 ответ
Решение
Вы правы, специального метода для определения имени класса в C++ в объекте Php::Value не существует. Таким образом, лучший способ определить имя класса - использовать метод Php:: call для вызова метода get_class в пользовательском пространстве PHP:
std::string classname = Php::call("get_class", object);
Где объект является одним из объектов в упомянутом массиве.