php / php/doc-en

Description of ENT_DISALLOWED in htmlentities is misleading

Open
#4,547 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
XML
Stars
596
Forks
890
Avg merge
1d 15h
Merged PRs (30d)
55

Description

From manual page: https://php.net/function.htmlentities

Description of ENT_DISALLOWED is misleading.
It states: "Replace invalid code points for the given document type with a Unicode Replacement Character U+FFFD (UTF-8) or &#FFFD; (otherwise) instead of leaving them as is. This may be useful, for instance, to ensure the well-formedness of XML documents with embedded external content."
It should say somenthing like: "Returns an empty string when invalid code points for the given document are found."

Tested using the following code:

$string = "This is a test: \x80\x81";
echo htmlentities($string, ENT_SUBSTITUTE, 'UTF-8');
// Output: This is a test: ��
echo "\n";
$string = "This is a test: \x80\x81";
echo htmlentities($string, ENT_DISALLOWED, 'UTF-8');
// Output: <empty line> 
echo "\n";
$string = "This is a test: xx";
echo htmlentities($string, ENT_DISALLOWED, 'UTF-8');
// Output: This is a test: xx

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the ENT_DISALLOWED description on the htmlentities manual page and compare it with the documented behavior shown in the issue’s PHP examples. Update the misleading wording to accurately describe the observed behavior, then review the surrounding ENT_* flag documentation for consistency.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
documentation
Issue type
Documentation
Difficulty
1/5
Estimated time
Under an hour
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.