Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 7008b8d632 |
14
README.md
14
README.md
@@ -1,17 +1,21 @@
|
|||||||
# PDODocument
|
# PDODocument
|
||||||
|
|
||||||
This library allows SQLite and PostgreSQL to be treated as document databases. It is a PHP implementation of the .NET [BitBadger.Documents](https://git.bitbadger.solutions/bit-badger/BitBadger.Documents) library.
|
This library allows SQLite and PostgreSQL to be treated as document databases. It is a PHP implementation of the .NET [BitBadger.Documents](https://relationaldocs.bitbadger.solutions/dotnet/) library.
|
||||||
|
|
||||||
## Add via Composer
|
## Add via Composer
|
||||||
|
|
||||||
[
|
[
|
||||||
](https://packagist.org/packages/bit-badger/pdo-document#v1.1.0-rc1) [
|
](https://packagist.org/packages/bit-badger/pdo-document#v1.2.0) [
|
||||||
](https://packagist.org/packages/bit-badger/pdo-document)
|
](https://packagist.org/packages/bit-badger/pdo-document#v2.2.0)
|
||||||
|
|
||||||
`composer require bit-badger/pdo-document`
|
`composer require bit-badger/pdo-document:^2`
|
||||||
|
|
||||||
|
_(Version 2 requires PHP 8.4 or greater.)_
|
||||||
|
|
||||||
For the v1 series, the `DocumentList` type's members `hasItems` and `items` are functions; in the v2 series, they are properties. Additionally, the `Option` and `Result` types included in the project have a similar difference; see the [v1 README](https://git.bitbadger.solutions/bit-badger/inspired-by-fsharp/src/branch/v1/README.md) for PHP 8.2 or 8.3 and the [v2 README](https://git.bitbadger.solutions/bit-badger/inspired-by-fsharp/src/branch/main/README.md) for PHP 8.4. Both versions are supported; the v1 / v2 distinction helps composer make the right choice based on the target PHP version of your project.
|
For the v1 series, the `DocumentList` type's members `hasItems` and `items` are functions; in the v2 series, they are properties. Additionally, the `Option` and `Result` types included in the project have a similar difference; see the [v1 README](https://git.bitbadger.solutions/bit-badger/inspired-by-fsharp/src/branch/v1/README.md) for PHP 8.2 or 8.3 and the [v2 README](https://git.bitbadger.solutions/bit-badger/inspired-by-fsharp/src/branch/main/README.md) for PHP 8.4. Both versions are supported; the v1 / v2 distinction helps composer make the right choice based on the target PHP version of your project.
|
||||||
|
|
||||||
|
v1.2 and v2.2 add a `Field->andQualifier()` function to modify the qualifier for a field and return the same instance.
|
||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
### Connection Details
|
### Connection Details
|
||||||
|
|||||||
662
composer.lock
generated
662
composer.lock
generated
File diff suppressed because it is too large
Load Diff
@@ -121,6 +121,18 @@ class Field
|
|||||||
: $fieldPath . ' ' . $this->op->toSQL() . $criteria;
|
: $fieldPath . ' ' . $this->op->toSQL() . $criteria;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set a qualifier for the field, returning the modified field
|
||||||
|
*
|
||||||
|
* @param string $qualifier The table qualifier to use for the field
|
||||||
|
* @return Field The field instance with the qualifier set
|
||||||
|
*/
|
||||||
|
public function andQualifier(string $qualifier): Field
|
||||||
|
{
|
||||||
|
$this->qualifier = $qualifier;
|
||||||
|
return $this;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Create parameter names for an IN clause
|
* Create parameter names for an IN clause
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
export PDO_DOC_PGSQL_HOST=localhost:8301
|
export PDO_DOC_PGSQL_HOST=localhost:8301
|
||||||
PG_VERSIONS=('13' '14' '15' '16' 'latest')
|
PG_VERSIONS=('14' '15' '16' '17' 'latest')
|
||||||
|
|
||||||
for PG_VERSION in "${PG_VERSIONS[@]}"
|
for PG_VERSION in "${PG_VERSIONS[@]}"
|
||||||
do
|
do
|
||||||
|
|||||||
@@ -192,6 +192,12 @@ describe('->toWhere()', function () {
|
|||||||
})->group('sqlite');
|
})->group('sqlite');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('->andQualifier()', function() {
|
||||||
|
test('adds a qualifier', function () {
|
||||||
|
expect(Field::equal('that', '82')->andQualifier('this'))->qualifier->toBe('this');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
describe('::equal()', function () {
|
describe('::equal()', function () {
|
||||||
test('creates Field w/o parameter', function () {
|
test('creates Field w/o parameter', function () {
|
||||||
$field = Field::equal('my_test', 9);
|
$field = Field::equal('my_test', 9);
|
||||||
|
|||||||
Reference in New Issue
Block a user