-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
357 lines (305 loc) · 14.7 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="chrome=1">
<title>PHPMongo ODM / PHPMongoKit</title>
<link rel="stylesheet" href="stylesheets/styles.css">
<link rel="stylesheet" href="stylesheets/pygment_trac.css">
<script src="javascripts/scale.fix.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<div class="wrapper">
<header class="without-description">
<h1>PHPMongoKit</h1>
<p></p>
<p class="view"><a href="https://github.com/PHPMongoKit">View the Project on GitHub <small>PHPMongoKit</small></a></p>
<ul>
<li class="single"><a href="https://github.com/PHPMongoKit">View On <strong>GitHub</strong></a></li>
</ul>
</header>
<section>
<h3>Products</h3>
<ul>
<li><a href="#php-mongo">Mongo ODM</a></li>
<li><a href="#php-mongo-migrator">Mongo Migrator</a></li>
<li><a href="#php-mongo-bundle">Mongo ODM Symfony Bundle</a></li>
<li><a href="#php-mongo-yii">Mongo ODM Yii adapter</a></li>
<li><a href="#yii2-mongo-odm">Mongo ODM Yii2 adapter</a></li>
<li><a href="#laravel-mongo-odm">Laravel PHPMongo Adapter</a></li>
</ul>
<a name="php-mongo"></a>
<h1>Mongo ODM</h1>
<a href="https://travis-ci.org/sokil/php-mongo"><img src="https://travis-ci.org/sokil/php-mongo.svg?branch=master"/></a>
<a href="https://gitter.im/sokil/php-mongo?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><img src="https://badges.gitter.im/Join Chat.svg"></a>
<p>Why to use this ODM? You can easily work with document data through comfortable getters and setters instead of array and don't check if key exist in array. Access to subdocument use dot-syntax. You can validate data passed to document before save. We give you events, which you can handle in different moments of document's life, and more things which make you life easier.</p>
<p>Github: <a href="https://github.com/sokil/php-mongo">https://github.com/sokil/php-mongo</a>
<p>Documentation: <a href="https://github.com/sokil/php-mongo/blob/master/README.md">https://github.com/sokil/php-mongo/blob/master/README.md</a>
<p>Download: <a href="https://github.com/sokil/php-mongo/releases/latest">https://github.com/sokil/php-mongo/releases/latest</a>
<p>Install through Composer:
<pre><code>
composer require sokil/php-mongo
</code></pre>
<h4>News</h4>
<p><b>2017-11-10</b> Released v. 1.22.2
<ul>
<li>Add $elemMatch to projection argument of `Cursor`
<li>`Cursor` methods `findOne`, `findAll`, `findRandom` deprecated, use `one`, `all` and `random` respectively;
<li>Allow pass filter to docker tests
<li>Document's `afterConstruct` event triggered with document instance
<li>Cache now compatible with PSR-16;
<li>Cache setters now return bool instead of exceptions to be compatible with PSR-16;
<li>Cache::setNeverExpired and Cache::setDueDate now deprecated. Use Cache::set instead;
</ul>
<p><b>2017-06-20</b> Released v. 1.21.5
<ul>
<li>Fix collection creation with empty options
<li>Allow specify validator while create collection
<li>Fixed mispell in method name BatchInsert::isValidationEbabled
<li>Fixed usage of validation flag in BatchInsert
<li>`Document::beforeConstruct` moved to `Structure::beforeConstruct` so embedded documents may configure some logic there
<li>`Collection::batchDelete()` now has required argument
<li>Now may be configured batch limit in `Cursor::copyToCollection` and `Cursor::moveToCollection`
<li>Methods of `\Iterator` interface currently not recommended to use directly in `Cursor` and `Paginator`. But if used, now `rewind` MUST be calls before `current`.
<li>Remove debug logger calls
</ul>
<p><b>2017-01-17</b> Released v.1.20
<ul>
<li>Implemented support of new ext-mongodb and, as a result, PHP7 and HHVM through compatibility layer "alcaeus/mongo-php-adapter", which implement API from old ext-mongo extension;
<li>Cursor::findOne() throws internal `CursorException` exception instead of related to mongo extension. Exception from extension may be obtained from internal exception;
<li>Document::save() throws internal `WriteException` exception instead of related to mongo extension. Exception from extension may be obtained from internal exception;
<li>Docker tests now check PHP 7 code
<li>Structure::apply() now protected
</ul>
<p><b>2016-12-18</b> Released v.1.19.2
<ul>
<li>Fix bug in Document::addToSet
<li>Fixed bug <a href="https://github.com/sokil/php-mongo/issues/132">#132</a>
<li>Configure document pool status in collection's mapping;
<li>Collection::_mongoCollection is deprecated. Use `Collection::getMongoCollection()` instead;
<li>Collection::ensureIndex() is deprecated, use `Collection::createIndex()`;
<li>Cursor::toArray() removed, use `Cursor::getMongoQuery()`;
<li>Document::belongsToCollection() removed, use `Collection::hasDocument()`;
<li>Document::FIELD_TYPE_* constants removed, use `FieldType` enum
<li>Collection::_database removed, use Collection::getDatabase() instead;
</ul>
<p><b>2016-09-13</b> Released v.1.18.2
<ul>
<li><a href="https://github.com/sokil/php-mongo#unit-tests">Docker test environment</a>
</ul>
<p><b>2016-08-18</b> Released v.1.18.1
<ul>
<li>Support of DBRefs
</ul>
<p><b>2016-08-16</b> Released v.1.17
<ul>
<li>`Client::$_mapping` set private. `Use Client::map()`
<li>Configure document class if collection class also configured by class prefix <a href="https://github.com/sokil/php-mongo/issues/128">#128</a>
</ul>
<p><b>2016-06-27</b> Released v.1.16.1
<ul>
<li>Fixed aggregation pipeline setter
</ul>
<p><b>2016-06-23</b> Released v.1.16
<ul>
<li>Allow set embedded document and validate it;
<li>`\Sokil\Mongo\Structure\Arrayable` moves to `\Sokil\Mongo\ArrayableInterface`;
<li>`Structure::$_modifiedFields` and `Structure::$_originalData` set private;
<li>Document::_data is now deprecated, and replaced with protected property Document::schema;
<li>Documents not allowed to be cloned;
<li>Removed 'validator' suffix from names of validation errors in array of validation errors obtained from Document::getErrors();
</ul>
<p><b>2016-04-27</b> Released v1.15.2
<ul>
<li>Update version of Event Dispatcher
</ul>
<p><b>2016-03-10</b> Released v.1.15.1
<ul>
<li>Allow delete indexes
</ul>
<p><b>2016-03-01</b> Released v.1.15
<ul>
<li>Removed `Collection::createPipeline()`. Use `Collection::createAggregator`;
<li>Aggregator options may be passed as arguments of `Collection::aggregate($pipelines, $options)` or configured
through methods of `Pipeline`;
<li>Experimental feature: aggregation returns Cursor, if third parameter passed `Collection::aggregate($pipelines, $options, $asCursor)`;
<li>`Collection::explainAggregate()` is deprecated. Use `Pipeline::explain()`;
<li>Added debug mode to `Client`;
</ul>
<p><b>2016-01-30</b> Released v.1.14
<ul>
<li>Fulltext search
</ul>
<p><b>2016-01-13</b> Released v.1.13.9
<ul>
<li>Fixed bug <a href="https://github.com/sokil/php-mongo/issues/121">#121</a> - Getting relation when document pool disabled
</ul>
<p><b>2016-01-01</b> Released v.1.13.8
<ul>
<li>Added $addToSet operator
</ul>
<p><b>2015-09-27</b> Released v.1.13.7
<ul>
<li>Batch operations
</ul>
<p><b>2015-08-25</b> Released v.1.13.6
<ul>
<li>Support of $unwind pipeline in aggregation
</ul>
<p><b>2015-08-07</b> Released v.1.13.5
<ul>
<li>Fix getting HAS_ONE and BELONGS relation when related object not found
</ul>
<p><b>2015-07-27</b> Released v.1.13.4
<ul>
<li>Cache detected db version
<li>Cursor autocomplete improves
</ul>
<p><b>2015-07-06</b> Released v.1.13.3
<ul>
<li>Use MongoWriteBatch classes when using unit of work
</ul>
<p><b>2015-05-22</b> Released v.1.13.2
<ul>
<li>Added support of cursor timeouts
</ul>
<p><b>2015-05-14</b> Released v.1.13.1
<ul>
<li>Added Database::getLastError()
</ul>
<p><b>2015-05-03</b> Released v.1.13
<ul>
<li>Optimistic locking
<li>Refactoring of mapping configs.
<li>Default argument removed from `Collection::getOption()`.
<li>Removed deprecated method `Collection::saveDocument()`.
<li>Removed deprecated method `Client::setConnection()`. Use Client::setMongoClient().
<li>Removed deprecated method `Client::getConnection()`. Use Client::getMongoClient().
<li>Removed `Document::pushFromArray()`. Use `Document::pushEach()`.
<li>Removed `Paginator::setQueryBuilder()’. Use `Paginator::setCursor()`.
<li>Removed `Document::fromArray()`. Use `Document::merge()` instead.
<li>Removed `Structure::load()`. Use `merge` or `mergeUnmidified` instead.
<li>Revision methods moved to `RevisionManager`. Call them from `Document` instance directly is deprecated. Use `Document::getRevisionManager()` instead.
<li>Mark Document::_scenario as private.
<li>Define relations in mapping.
<li>`Operator::getAll()` is deprecated. Use `Operator::toArray()`.
<li>Protected access of property Structure::_modifiedFields is deprecated. Use self::getModifiedFields().
<li>Protected access of property Structure::_originalData is deprecated. Use self::getOriginalData().
<li>Removed classes QueryBuilder and GridFSQueryBuilder. Hydration logic improved
<li>Refactor document saving
<li>Collection::deleteDocument() is deprecated. Use Document::delete()
<li>Collection::isVersioningEnabled() and Collection::enableVersioning() are deprecated. Use 'vrsioning' in mapping.
<li>Collection properties 'documentClass', 'versioning', '_index' and '_queryExpressionClass' are deprecated. Use mapping declarations instead.
</ul>
<p><b>2015-03-03</b> Released v.1.12.8
<ul>
<li>Method 'Validator::validate()' marked as final
<li>Refactoring of document relations
<li>Document::belongsToCollection() now deprecated. Use Collection::hasDocument()
<li>Refactoring of document events
</ul>
<p><b>2015-02-20</b> Released v.1.12.7
<ul>
<li>Define cursor's batch size</li>
</ul>
<p><b>2015-02-06</b> Released v.1.12.6
<ul><li>Accept expression array and callable when call `Collection::getDistinct()`</li></ul>
<p><b>2015-02-01</b> Released v.1.12.5
<ul>
<li>Fix update when expression defined as callable
<li>Fix deleting documents when expression specified as callable
</ul>
<p><b>2015-01-27</b> Released v.1.12.4
<ul>
<li>If callable in `Dollection::getDocument()` specified, document always loaded directly omitting document pool.
<li>Fixed 'in' validator when custom error message specified
<li>Dependency from major version number of Symfony Event Dispatcher
</ul>
<p><b>2015-01-18</b> Released v.1.12.3
<ul>
<li>Fixed bug with naming of validator in errors array. Removed suffix 'validator'.
<li>Behavior refactoring.
<li>Old validator name is kept for back compatibility and will be removed in next versions
</ul>
<a name="php-mongo-migrator"></a>
<h1>Mongo Migrator</h1>
<h3>Migration manager for MongoDB</h3>
<a href="https://travis-ci.org/sokil/php-mongo-migrator"><img src="https://travis-ci.org/sokil/php-mongo-migrator.svg?branch=master"/></a>
<a href="https://gitter.im/sokil/php-mongo-migrator?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"><img src="https://badges.gitter.im/Join Chat.svg"></a>
<p>Schema not required in MongoDb, so we dont need to create databases, collections or altering them. However there are some cases when migrations required in schemaless databases:
<ul>
<li>Creating collections with special parameters, like capped collection;
<li>Renaming or deleting collections;
<li>Creating, renaming or deleting fields;
<li>Creating, changing or deleting indexes
</ul>
<p>Github and documentation: <a href="https://github.com/sokil/php-mongo-migrator">https://github.com/sokil/php-mongo-migrator</a>
<p>Download: <a href="https://github.com/sokil/php-mongo-migrator/releases/latest">https://github.com/sokil/php-mongo-migrator/releases/latest</a>
<p>Install through Composer:
<pre><code>
{
"require": {
"sokil/php-mongo-migrator": "dev-master"
}
}
</code></pre>
<p>Install phar:
<pre><code>
wget http://phpmongokit.github.io/dists/mongo-migrator.phar && chmod +x mongo-migrator.phar && sudo mv mongo-migrator.phar /usr/local/bin
</code></pre>
<a name="php-mongo-bundle"></a>
<h1>Mongo ODM Symfony bundle</h1>
<p>Github and documentation: <a href="https://github.com/sokil/php-mongo-bundle">https://github.com/sokil/php-mongo-bundle</a>
<p>Download: <a href="https://github.com/sokil/php-mongo-bundle/releases/latest">https://github.com/sokil/php-mongo-bundle/releases/latest</a>
<p>Install through Composer:
<pre><code>
{
"require": {
"sokil/php-mongo-bundle": "dev-master"
}
}
</code></pre>
<a name="laravel-mongo-odm"></a>
<h1>Laravel PHPMongo Adapter</h1>
<p>Github and documentation: <a href="https://github.com/sokil/laravel-mongo-odm">https://github.com/sokil/laravel-mongo-odm</a>
<p>Download: <a href="https://github.com/sokil/laravel-mongo-odm/releases/latest">https://github.com/sokil/laravel-mongo-odm/releases/latest</a>
<p>Install through Composer:
<pre><code>
composer require phpmongokit/laravel-mongo-odm
</code></pre>
<a name="php-mongo-yii"></a>
<h1>Mongo ODM Yii adapter</h1>
<p>Consists of PHPMongo adapter, data provider and log router for MongoDb.</p>
<p>Github and documentation: <a href="https://github.com/sokil/php-mongo-yii">https://github.com/sokil/php-mongo-yii</a>
<p>Download: <a href="https://github.com/sokil/php-mongo-yii/releases/latest">https://github.com/sokil/php-mongo-yii/releases/latest</a>
<p>Install through Composer:
<pre><code>
{
"require": {
"sokil/php-mongo-yii": "dev-master"
}
}
</code></pre>
<a name="yii2-mongo-odm"></a>
<h1>Mongo ODM Yii2 adapter</h1>
<p>Consists of PHPMongo adapter for MongoDb.</p>
<p>Github and documentation: <a href="https://github.com/PHPMongoKit/yii2-mongo-odm">https://github.com/PHPMongoKit/yii2-mongo-odm</a>
<p>Download: <a href="https://github.com/PHPMongoKit/yii2-mongo-odm/releases/latest">https://github.com/PHPMongoKit/yii2-mongo-odm/releases/latest</a>
<p>Install through Composer:
<pre><code>
composer require phpmongokit/yii2-mongo-odm
</code></pre>
<a href="https://github.com/sokil/php-mongo"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/365986a132ccd6a44c23a9169022c0b5c890c387/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_red_aa0000.png"></a>
</body>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-9905532-38"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-9905532-38');
</script>
</html>