ArangoDB-PHP API Documentation
  • Namespace
  • Class
  • Deprecated

Namespaces

  • triagens
    • ArangoDb

Classes

  • triagens\ArangoDb\AdminHandler
  • triagens\ArangoDb\AqlUserFunction
  • triagens\ArangoDb\Autoloader
  • triagens\ArangoDb\Batch
  • triagens\ArangoDb\BatchPart
  • triagens\ArangoDb\BindVars
  • triagens\ArangoDb\Collection
  • triagens\ArangoDb\CollectionHandler
  • triagens\ArangoDb\Connection
  • triagens\ArangoDb\ConnectionOptions
  • triagens\ArangoDb\Cursor
  • triagens\ArangoDb\Database
  • triagens\ArangoDb\DefaultValues
  • triagens\ArangoDb\Document
  • triagens\ArangoDb\DocumentHandler
  • triagens\ArangoDb\Edge
  • triagens\ArangoDb\EdgeDefinition
  • triagens\ArangoDb\EdgeHandler
  • triagens\ArangoDb\Endpoint
  • triagens\ArangoDb\Export
  • triagens\ArangoDb\ExportCursor
  • triagens\ArangoDb\Graph
  • triagens\ArangoDb\GraphHandler
  • triagens\ArangoDb\Handler
  • triagens\ArangoDb\HttpHelper
  • triagens\ArangoDb\HttpResponse
  • triagens\ArangoDb\QueryCacheHandler
  • triagens\ArangoDb\QueryHandler
  • triagens\ArangoDb\Statement
  • triagens\ArangoDb\TraceRequest
  • triagens\ArangoDb\TraceResponse
  • triagens\ArangoDb\Transaction
  • triagens\ArangoDb\Traversal
  • triagens\ArangoDb\UpdatePolicy
  • triagens\ArangoDb\UrlHelper
  • triagens\ArangoDb\Urls
  • triagens\ArangoDb\User
  • triagens\ArangoDb\UserHandler
  • triagens\ArangoDb\ValueValidator
  • triagens\ArangoDb\Vertex
  • triagens\ArangoDb\VertexHandler

Exceptions

  • triagens\ArangoDb\ClientException
  • triagens\ArangoDb\ConnectException
  • triagens\ArangoDb\Exception
  • triagens\ArangoDb\ServerException
 1 <?php
 2 
 3 /**
 4  * ArangoDB PHP client: value validator
 5  *
 6  * @package   triagens\ArangoDb
 7  * @author    Jan Steemann
 8  * @copyright Copyright 2012, triagens GmbH, Cologne, Germany
 9  */
10 
11 namespace triagens\ArangoDb;
12 
13 /**
14  * A simple validator for values to be stored in the database
15  *
16  * @package triagens\ArangoDb
17  * @since   0.2
18  */
19 class ValueValidator
20 {
21     /**
22      * Validate the value of a variable
23      *
24      * Allowed value types are string, integer, double and boolean. Arrays are also allowed if they contain only one of the former types.
25      *
26      * @throws ClientException
27      *
28      * @param mixed $value - value to validate
29      *
30      * @return void - will throw if an invalid value type is passed
31      */
32     public static function validate($value)
33     {
34         if (is_string($value) || is_int($value) || is_float($value) || is_bool($value) || null === $value) {
35             // type is allowed
36             return;
37         }
38 
39         if (is_array($value)) {
40             // must check all elements contained
41             foreach ($value as $subValue) {
42                 self::validate($subValue);
43             }
44 
45             return;
46         }
47 
48         // type is invalid
49         throw new ClientException('Invalid bind parameter value');
50     }
51 }
52 
ArangoDB-PHP API Documentation API documentation generated by ApiGen