ArangoDB-PHP-Core API Documentation
  • Namespace
  • Class
  • Deprecated

Namespaces

  • frankmayer
    • ArangoDbPhpCore
      • Api
        • Rest
      • Config
      • Connectors
      • Plugins
      • Protocols
        • Http
      • TraitRepository

Classes

  • frankmayer\ArangoDbPhpCore\Api\Rest\Api
  • frankmayer\ArangoDbPhpCore\Api\Rest\Async
  • frankmayer\ArangoDbPhpCore\Api\Rest\Batch
  • frankmayer\ArangoDbPhpCore\Api\Rest\Collection
  • frankmayer\ArangoDbPhpCore\Api\Rest\Database
  • frankmayer\ArangoDbPhpCore\Api\Rest\Document
  • frankmayer\ArangoDbPhpCore\Api\Rest\DocumentBase
  • frankmayer\ArangoDbPhpCore\Api\Rest\Edge
  • frankmayer\ArangoDbPhpCore\Autoloader
  • frankmayer\ArangoDbPhpCore\Client
  • frankmayer\ArangoDbPhpCore\ClientOptions
  • frankmayer\ArangoDbPhpCore\Config\ConnectionOptions
  • frankmayer\ArangoDbPhpCore\Config\DefaultValues
  • frankmayer\ArangoDbPhpCore\Config\Endpoint
  • frankmayer\ArangoDbPhpCore\Config\UpdatePolicy
  • frankmayer\ArangoDbPhpCore\Connectors\AbstractHttpConnector
  • frankmayer\ArangoDbPhpCore\Plugins\Plugin
  • frankmayer\ArangoDbPhpCore\Plugins\PluginManager
  • frankmayer\ArangoDbPhpCore\Plugins\TestPlugin
  • frankmayer\ArangoDbPhpCore\Plugins\TracerPlugin
  • frankmayer\ArangoDbPhpCore\Protocols\Http\AbstractHttpRequest
  • frankmayer\ArangoDbPhpCore\Protocols\Http\HttpRequest
  • frankmayer\ArangoDbPhpCore\Protocols\Http\HttpResponse

Interfaces

  • frankmayer\ArangoDbPhpCore\Api\ApiInterface
  • frankmayer\ArangoDbPhpCore\Api\RestApiInterface
  • frankmayer\ArangoDbPhpCore\ClientInterface
  • frankmayer\ArangoDbPhpCore\ConnectorInterface
  • frankmayer\ArangoDbPhpCore\Plugins\PluginInterface
  • frankmayer\ArangoDbPhpCore\Protocols\Http\HttpConnectorInterface
  • frankmayer\ArangoDbPhpCore\Protocols\Http\HttpRequestInterface
  • frankmayer\ArangoDbPhpCore\Protocols\Http\HttpResponseInterface
  • frankmayer\ArangoDbPhpCore\Protocols\RequestInterface
  • frankmayer\ArangoDbPhpCore\Protocols\ResponseInterface

Traits

  • frankmayer\ArangoDbPhpCore\Api\Rest\DocumentTrait
  • frankmayer\ArangoDbPhpCore\Api\Rest\EdgeTrait
  • frankmayer\ArangoDbPhpCore\TraitRepository\ClientLogger

Exceptions

  • frankmayer\ArangoDbPhpCore\ClientException
  • frankmayer\ArangoDbPhpCore\ConnectionException
  • frankmayer\ArangoDbPhpCore\Exception
  • frankmayer\ArangoDbPhpCore\ServerException
 1 <?php
 2 /**
 3  * File: DocumentTrait.php
 4  *
 5  * @author    Frank Mayer
 6  * @copyright Copyright 2013-2015, FRANKMAYER.NET, Athens, Greece
 7  */
 8 
 9 namespace frankmayer\ArangoDbPhpCore\Api\Rest;
10 
11 use frankmayer\ArangoDbPhpCore\Protocols\Http\AbstractHttpRequest;
12 
13 
14 /**
15  * Class DocumentTrait
16  *
17  * @package frankmayer\ArangoDbPhpCore\Api\Rest
18  */
19 trait DocumentTrait
20 {
21     /**
22      * @param string $collection
23      * @param string $body
24      * @param array  $urlQuery
25      * @param array  $options
26      *
27      * @return \frankmayer\ArangoDbPhpCore\Protocols\Http\HttpResponse
28      */
29     public function create(
30         $collection = null,
31         $body = null,
32         $urlQuery = [],
33         $options = []
34     ) {
35 
36         /** @var AbstractHttpRequest $request */
37         $request          = $this->getRequest();
38         $request->options = $options;
39         $request->body    = $body;
40 
41         if (is_array($request->body)) {
42             $request->body = json_encode($request->body);
43         }
44 
45         $request->path = $this->client->fullDatabasePath . static::API_PATH;
46 
47         if (isset($collection)) {
48             $urlQuery = array_merge(
49                 $urlQuery ? $urlQuery : [],
50                 ['collection' => $collection]
51             );
52         }
53 
54         $urlQuery = $request->buildUrlQuery($urlQuery);
55 
56         $request->path .= $urlQuery;
57 
58         $request->method = static::METHOD_POST;
59 
60         return $this->getReturnObject($request);
61     }
62 }
63 
ArangoDB-PHP-Core API Documentation API documentation generated by ApiGen