Как использовать метод 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, если вы хотите углубиться.

Другие вопросы по тегам