php string escaping like python's “”“ ”“”?

2019-02-26 04:21发布

问题:

Hi I was wondering if there is an easy way to escape strings in php.

In python I use """ """, and everything between there is escaped. so when using special characters it is ignored.

I have some text to echo, and escaping everything manually just takes forever.

Does php have a similar function built in ?

thanks!

回答1:

Which are the characters do you have to escape?

You could use single quotes [docs]. The only characters that have to be escaped in such a string are \ and '.

If you have a long string, also have a look at heredoc [docs].



回答2:

Since PHP 5.3, you can use nowdoc. As opposed to heredoc, nowdoc does not expand variables inside it.



回答3:

There are various functions depending on what you want to escape.

If you are using a lot of double quotes, for example with html, you can wrap the string in single quotes to prevent having to escape.

$string = '<a href="#">no escape needed</a>';

The same goes the other way

$string = "I'd rather be gaming";

Then you have a couple of functions used mostly for escaping user input:

addslashes() that will escape quotes
htmlspecialchars() will 'escape' html codes
mysql_real_escape_string() for escaping mysql input



标签: php escaping