Overview

Namespaces

  • None
  • RedBeanPHP
    • Adapter
    • BeanHelper
    • Cursor
    • Driver
    • Logger
      • RDefault
    • QueryWriter
    • RedException
    • Repository
    • Util

Classes

  • R
  • RedBean_SimpleModel
  • RedBeanPHP\Adapter\DBAdapter
  • RedBeanPHP\AssociationManager
  • RedBeanPHP\BeanCollection
  • RedBeanPHP\BeanHelper\SimpleFacadeBeanHelper
  • RedBeanPHP\Cursor\NullCursor
  • RedBeanPHP\Cursor\PDOCursor
  • RedBeanPHP\Driver\RPDO
  • RedBeanPHP\DuplicationManager
  • RedBeanPHP\Facade
  • RedBeanPHP\Finder
  • RedBeanPHP\Jsonable
  • RedBeanPHP\LabelMaker
  • RedBeanPHP\Logger\RDefault
  • RedBeanPHP\Logger\RDefault\Debug
  • RedBeanPHP\Observable
  • RedBeanPHP\OODB
  • RedBeanPHP\OODBBean
  • RedBeanPHP\QueryWriter\AQueryWriter
  • RedBeanPHP\QueryWriter\CUBRID
  • RedBeanPHP\QueryWriter\MySQL
  • RedBeanPHP\QueryWriter\PostgreSQL
  • RedBeanPHP\QueryWriter\SQLiteT
  • RedBeanPHP\R
  • RedBeanPHP\Repository
  • RedBeanPHP\Repository\Fluid
  • RedBeanPHP\Repository\Frozen
  • RedBeanPHP\SimpleModel
  • RedBeanPHP\SimpleModelHelper
  • RedBeanPHP\TagManager
  • RedBeanPHP\ToolBox
  • RedBeanPHP\Util\ArrayTool
  • RedBeanPHP\Util\DispenseHelper
  • RedBeanPHP\Util\Dump
  • RedBeanPHP\Util\MultiLoader
  • RedBeanPHP\Util\Transaction

Interfaces

  • RedBeanPHP\Adapter
  • RedBeanPHP\BeanHelper
  • RedBeanPHP\Cursor
  • RedBeanPHP\Driver
  • RedBeanPHP\Logger
  • RedBeanPHP\Observer
  • RedBeanPHP\Plugin
  • RedBeanPHP\QueryWriter

Exceptions

  • RedBeanPHP\RedException
  • RedBeanPHP\RedException\SQL

Functions

  • array_flatten
  • dmp
  • EID
  • genslots
  • Overview
  • Namespace
  • Class
 1: <?php
 2: 
 3: namespace RedBeanPHP\Util;
 4: 
 5: use RedBeanPHP\OODB as OODB;
 6: 
 7: /**
 8:  * Multi Bean Loader Helper
 9:  *
10:  * This code was originally part of the facade, however it has
11:  * been decided to remove unique features to service classes like
12:  * this to make them available to developers not using the facade class.
13:  *
14:  * This helper class offers limited support for one-to-one
15:  * relations by providing a service to load a set of beans
16:  * with differnt types and a common ID.
17:  *
18:  * @file    RedBeanPHP/Util/MultiLoader.php
19:  * @author  Gabor de Mooij and the RedBeanPHP Community
20:  * @license BSD/GPLv2
21:  *
22:  * @copyright
23:  * copyright (c) G.J.G.T. (Gabor) de Mooij and the RedBeanPHP Community
24:  * This source file is subject to the BSD/GPLv2 License that is bundled
25:  * with this source code in the file license.txt.
26:  */
27: class MultiLoader
28: {
29:     /**
30:      * Loads multiple types of beans with the same ID.
31:      * This might look like a strange method, however it can be useful
32:      * for loading a one-to-one relation.
33:      *
34:      * @param OODB         $oodb  OODB object
35:      * @param string|array $types the set of types to load at once
36:      * @param mixed        $id    the common ID
37:      *
38:      * @return OODBBean
39:      */
40:     public static function load( OODB $oodb, $types, $id )
41:     {
42:         if ( is_string( $types ) ) {
43:             $types = explode( ',', $types );
44:         }
45: 
46:         if ( !is_array( $types ) ) {
47:             return array();
48:         }
49: 
50:         foreach ( $types as $k => $typeItem ) {
51:             $types[$k] = $oodb->load( $typeItem, $id );
52:         }
53: 
54:         return $types;
55:     }
56: }
57: 
API documentation generated by ApiGen