08escape.phpt

来自「PHP v6.0 For Linux 运行环境:Win9X/ WinME/ Wi」· PHPT 代码 · 共 69 行

PHPT
69
字号
--TEST--PostgreSQL escape functions--SKIPIF--<?php include("skipif.inc"); ?>--FILE--<?phpinclude 'config.inc';define('FILE_NAME', dirname(__FILE__) . '/php.gif');// pg_escape_string() test$before = "ABC\\ABC\'";$expect  = "ABC\\\\ABC\\'";$after = pg_escape_string($before);if ($expect === $after) {	echo "pg_escape_string() is Ok\n";}else {	echo "pg_escape_string() is NOT Ok\n";	var_dump($before);	var_dump($after);	var_dump($expect);}// pg_escape_bytea() test$before = "ABC\\ABC";$expect  = "ABC\\\\\\\\ABC";$after  = pg_escape_bytea($before);if ($expect === $after) {	echo "pg_escape_bytea() is Ok\n";}else {	echo "pg_escape_byte() is NOT Ok\n";	var_dump($before);	var_dump($after);	var_dump($expect);}// Test using database$data = file_get_contents(FILE_NAME);$db   = pg_connect($conn_str);// Insert binary to DB$escaped_data = pg_escape_bytea($data);pg_query("DELETE FROM ".$table_name." WHERE num = -9999;");$sql = "INSERT INTO ".$table_name." (num, bin) VALUES (-9999, CAST ('".$escaped_data."' AS BYTEA));";pg_query($db, $sql);// Retrieve binary from DB$sql = "SELECT bin::bytea FROM ".$table_name." WHERE num = -9999";$result = pg_query($db, $sql);$row = pg_fetch_array($result, 0, PGSQL_ASSOC);if ($data === pg_unescape_bytea($row['bin'])) {	echo "pg_escape_bytea() actually works with database\n";}else {	echo "pg_escape_bytea() is broken\n";}?>--EXPECT--pg_escape_string() is NOT Okstring(9) "ABC\ABC\'"string(12) "ABC\\ABC\\''"string(10) "ABC\\ABC\'"pg_escape_bytea() is Okpg_escape_bytea() actually works with database

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?