PHP 8.4.2 Released!

db2_escape_string

(PECL ibm_db2 >= 1.6.0)

db2_escape_string Used to escape certain characters

说明

db2_escape_string(string $string_literal): string

Prepends backslashes to special characters in the string argument.

参数

string_literal

The string that contains special characters that need to be modified. Characters that are prepended with a backslash are \x00, \n, \r, \, ', " and \x1a.

返回值

Returns string_literal with the special characters noted above prepended with backslashes.

示例

示例 #1 A db2_escape_string() example

Result of using the db2_escape_string() function

<?php

$conn
= db2_connect($database, $user, $password);

if (
$conn) {
$str[0] = "All characters: \x00 , \n , \r , \ , ' , \" , \x1a .";
$str[1] = "Backslash (\). Single quote ('). Double quote (\")";
$str[2] = "The NULL character \0 must be quoted as well";
$str[3] = "Intersting characters: \x1a , \x00 .";
$str[4] = "Nothing to quote";
$str[5] = 200676;
$str[6] = "";

foreach(
$str as $string ) {
echo
"db2_escape_string: " . db2_escape_string($string). "\n";
}
}
?>

以上示例会输出:

db2_escape_string: All characters: \0 , \n , \r , \\ , \' , \" , \Z .
db2_escape_string: Backslash (\\). Single quote (\'). Double quote (\")
db2_escape_string: The NULL character \0 must be quoted as well
db2_escape_string: Intersting characters: \Z , \0 .
db2_escape_string: Nothing to quote
db2_escape_string: 200676
db2_escape_string:

参见

添加备注

用户贡献的备注 1 note

up
1
hippyjim
15 years ago
One thing to note here - don't know if it applies to all DB2 installations, and I know I'm using an antiquated one, but my DB2 install wants a ' to be quoted rather than slashed.

That means this function is useless to pick up apostrophes ' in strings, as it adds a slash which DB2 ignores.

You'll need to use something like str_replace to swap your ' for ''.
To Top