ADDSLASHES(3) 1 ADDSLASHES(3)
addslashes - Quote string with slashes
string addslashes (string $str)
Returns a string with backslashes before characters that need to be escaped. These characters are single quote ( '), double quote ( "),
backslash ( ) and NUL (the NULL byte).
An example use of addslashes(3) is when you're entering data into string that is evaluated by PHP. For example, O'Reilly is stored in
$str, you need to escape $str. (e.g. eval("echo '".addslashes($str)."';"); )
To escape database parameters, DBMS specific escape function (e.g. mysqli_real_escape_string(3) for MySQL or pg_escape_literal(3),
pg_escape_string(3) for PostgreSQL) should be used for security reasons. DBMSes have differect escape specification for identifiers (e.g.
Table name, field name) than parameters. Some DBMS such as PostgreSQL provides identifier escape function, pg_escape_identifier(3), but not
all DBMS provides identifier escape API. If this is the case, refer to your database system manual for proper escaping method.
If your DBMS doesn't have an escape function and the DBMS uses to escape special chars, you might be able to use this function only when
this escape method is adequate for your database. Please note that use of addslashes(3) for database parameter escaping can be cause of
security issues on most databases.
The PHP directive magic_quotes_gpc was on by default before PHP 5.4, and it essentially ran addslashes(3) on all GET, POST, and COOKIE
data. Do not use addslashes(3) on strings that have already been escaped with magic_quotes_gpc as you'll then do double escaping. The func-
tion get_magic_quotes_gpc(3) may come in handy for checking this.
- The string to be escaped.
Returns the escaped string.
An addslashes(3) example
$str = "Is your name O'Reilly?";
// Outputs: Is your name O'Reilly?
stripcslashes(3), stripslashes(3), addcslashes(3), htmlspecialchars(3), quotemeta(3), get_magic_quotes_gpc(3).
PHP Documentation Group ADDSLASHES(3)