Как использовать метод bindFunc в Redbeanphp?
Я работаю над проектом, который должен работать с пространственным объектом в MySQL, и я выбираю Redbeanphp в качестве системы ORM в этом проекте. я нашел redbeanphp таким потрясающим и потрясающим. Я ищу в Google и нашел эту ссылку, которая говорит, что метод bindFunc может помочь мне в работе с пространственным объектом, но я не могу найти никакого примера для использования этого метода.
как этот метод работает и как я могу использовать этот метод?
1 ответ
В соответствии с частью базы данных этого сайта вы связали:
Начиная с RedBeanPHP 4.1, вы можете привязать функцию SQL к столбцу. Это полезно для переноса значений при чтении из / записи в базу данных. Например, чтобы использовать пространственные типы данных MySQL, вам нужно подготовить столбцы следующим образом:
R::bindFunc( 'read', 'location.point', 'asText' );
R::bindFunc( 'write', 'location.point', 'GeomFromText' );
$location = R::dispense( 'location' );
$location->point = 'POINT(14 6)';
//inserts using GeomFromText() function
R::store( $location );
//to unbind a function, pass NULL:
R::bindFunc( 'read', 'location.point', NULL );
Эта функция была добавлена для поддержки пространственных типов данных в MySQL, как показано выше. Документация не удивительна, поэтому я рекомендую взглянуть на исходный код на Github, если вы хотите углубиться.