Question

I'm trying to use htmlspecialchars but it doesn't seem to be working. I'm using OSX 10.9.1 and PHP 5.4.17. I write:

var_dump(htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES, 'UTF-8'));
echo htmlspecialchars("<a href='test'>Test</a>", ENT_XHTML, 'UTF-8');

and get:

string '&lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;' (length=45)
<a href='test'>Test</a

Any ideas?

Was it helpful?

Solution

It works, but you expect something else.

The output is interpreted by your browser as HTML. You can get the plain output by setting the content type to plain or using a command line.

<?php

header('Content-Type: text/plain');

var_dump(htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES, 'UTF-8'));
echo htmlspecialchars("<a href='test'>Test</a>", ENT_XHTML, 'UTF-8');
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top