mirror of
https://github.com/danog/postgres.git
synced 2024-11-27 04:24:45 +01:00
61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
|
# PostgreSQL Client for Amp
|
||
|
|
||
|
This library is a component for [Amp](https://github.com/amphp/amp) that provides an asynchronous client for PostgreSQL.
|
||
|
|
||
|
[![Build Status](https://img.shields.io/travis/amphp/postgres/master.svg?style=flat-square)](https://travis-ci.org/amphp/postgres)
|
||
|
[![Coverage Status](https://img.shields.io/coveralls/amphp/postgres/master.svg?style=flat-square)](https://coveralls.io/r/amphp/postgres)
|
||
|
[![Semantic Version](https://img.shields.io/github/release/amphp/postgres.svg?style=flat-square)](http://semver.org)
|
||
|
[![MIT License](https://img.shields.io/packagist/l/amphp/postgres.svg?style=flat-square)](LICENSE)
|
||
|
[![@amphp on Twitter](https://img.shields.io/badge/twitter-%40asyncphp-5189c7.svg?style=flat-square)](https://twitter.com/asyncphp)
|
||
|
|
||
|
##### Requirements
|
||
|
|
||
|
- PHP 7
|
||
|
|
||
|
##### Installation
|
||
|
|
||
|
The recommended way to install is with the [Composer](http://getcomposer.org/) package manager. (See the [Composer installation guide](https://getcomposer.org/doc/00-intro.md) for information on installing and using Composer.)
|
||
|
|
||
|
Run the following command to use this library in your project:
|
||
|
|
||
|
```bash
|
||
|
composer require amphp/postgres
|
||
|
```
|
||
|
|
||
|
You can also manually edit `composer.json` to add this library as a project requirement.
|
||
|
|
||
|
```js
|
||
|
// composer.json
|
||
|
{
|
||
|
"require": {
|
||
|
"amphp/postgres": "^0.1"
|
||
|
}
|
||
|
}
|
||
|
```
|
||
|
|
||
|
#### Example
|
||
|
|
||
|
```php
|
||
|
#!/usr/bin/env php
|
||
|
<?php
|
||
|
|
||
|
require __DIR__ . '/vendor/autoload.php';
|
||
|
|
||
|
use Amp\Postgres;
|
||
|
|
||
|
Amp\execute(function () {
|
||
|
/** @var \Amp\Postgres\Connection $connection */
|
||
|
$connection = yield Postgres\connect('host=localhost user=postgres dbname=test');
|
||
|
|
||
|
/** @var \Amp\Postgres\Statement $statement */
|
||
|
$statement = yield $connection->prepare('SELECT * FROM test WHERE id=$1');
|
||
|
|
||
|
/** @var \Amp\Postgres\TupleResult $result */
|
||
|
$result = yield $statement->execute(1337);
|
||
|
|
||
|
while (yield $result->next()) {
|
||
|
$row = $result->getCurrent();
|
||
|
// $row is an array (map) of column values. e.g.: $row['column_name']
|
||
|
}
|
||
|
});
|
||
|
```
|