diff options
| author | Yasuo Ohgaki <yohgaki@php.net> | 2014-02-16 12:22:52 +0900 |
|---|---|---|
| committer | Yasuo Ohgaki <yohgaki@php.net> | 2014-02-16 14:11:21 +0900 |
| commit | 56854511d8f046d49cd34666764b37698d961431 (patch) | |
| tree | c635621560fdd56dcf9b34de1b471a84efe59d4f /ext/pgsql/tests/10pg_convert_json_array.phpt | |
| parent | 53daf94f28d562ff5f9d3d809448ee8188b16751 (diff) | |
| download | php-git-56854511d8f046d49cd34666764b37698d961431.tar.gz | |
EXPERIMENTAL flags for pg_select/pg_insert/pg_update/pg_delete are removed.
Use string escape for exotic types that allows to handle any data types. i.e. Array, JSON, JSONB, etc will work.
Add escape only query for better performance which removes meta data look up. Limitations forced by pg_convert() can be avoided with this. PGSQL_DML_ESCAPE constant is added for it.
Diffstat (limited to 'ext/pgsql/tests/10pg_convert_json_array.phpt')
| -rw-r--r-- | ext/pgsql/tests/10pg_convert_json_array.phpt | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/ext/pgsql/tests/10pg_convert_json_array.phpt b/ext/pgsql/tests/10pg_convert_json_array.phpt new file mode 100644 index 0000000000..960cfd6c99 --- /dev/null +++ b/ext/pgsql/tests/10pg_convert_json_array.phpt @@ -0,0 +1,37 @@ +--TEST-- +PostgreSQL pg_convert() and JSON/Array +--SKIPIF-- +<?php +include("skipif.inc"); +skip_server_version('9.2'); +?> +--FILE-- +<?php +error_reporting(E_ALL); + +include 'config.inc'; + +$db = pg_connect($conn_str); + +$fields = array( + 'textary'=>'{"meeting", "lunch", "training", "presentation"}', + 'jsn'=>'{"f1":1,"f2":"foo"}', +); +$converted = pg_convert($db, $table_name_92, $fields); +var_dump($converted); + +if (!pg_insert($db, $table_name_92, $fields)) { + echo "Error\n"; +} else { + echo "OK\n"; +} + +?> +--EXPECT-- +array(2) { + [""textary""]=> + string(51) "E'{"meeting", "lunch", "training", "presentation"}'" + [""jsn""]=> + string(22) "E'{"f1":1,"f2":"foo"}'" +} +OK |
