Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * ф-ция выбирает ближайщие ZIP коды
- */
- private function _getZips($mainZip){
- $ZIP = ORM::factory('Zip');
- // var_dump('_getZips');
- if(!isset($mainZip['longitude'])){
- return [];
- }
- $distance = "(3958 * pi( )
- * sqrt( ( {$mainZip['latitude']} - latitude )
- * ( {$mainZip['latitude']} - latitude )
- + cos( {$mainZip['latitude']} / 57.29578 )
- * cos( latitude / 57.29578 ) * (
- {$mainZip['longitude']} - longitude )
- * ( {$mainZip['longitude']} - longitude ) ) / 180)";
- return $ZIP->select(array(DB::expr($distance), 'distance'))
- //->where('zip', '<>', $mainZip['zip'])
- ->order_by('distance')
- ->limit(100)
- ->find_all()
- ;//->as_array('id');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement