svn: /phpdoc/bg/trunk/reference/strings/functions/ htmlentities.xml
[email protected] (Stanislav Yordanov) Thu, 31 Mar 2016 09:02:23 +0000
| Newsgroups | php.doc.bg |
|---|---|
| Message-ID | <[email protected]> |
stanprog Thu, 31 Mar 2016 09:02:23 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=338854
Log:
sync to EN
Changed paths:
U phpdoc/bg/trunk/reference/strings/functions/htmlentities.xml
svn-diffs-338854.txt
(text/x-diff, 10.3 KB)
Modified: phpdoc/bg/trunk/reference/strings/functions/htmlentities.xml
===================================================================
--- phpdoc/bg/trunk/reference/strings/functions/htmlentities.xml 2016-03-30 18:53:29 UTC (rev 338853)
+++ phpdoc/bg/trunk/reference/strings/functions/htmlentities.xml 2016-03-31 09:02:23 UTC (rev 338854)
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297028 Maintainer: stanprog Status: ready -->
-<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.htmlentities">
+<!-- EN-Revision: 334627 Maintainer: stanprog Status: ready -->
+<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.htmlentities" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>htmlentities</refname>
<refpurpose>Преобразува всички подходящи знаци в HTML единици</refpurpose>
@@ -12,15 +12,14 @@
<methodsynopsis>
<type>string</type><methodname>htmlentities</methodname>
<methodparam><type>string</type><parameter>string</parameter></methodparam>
- <methodparam choice="opt"><type>int</type><parameter>quote_style</parameter><initializer>ENT_COMPAT</initializer></methodparam>
- <methodparam choice="opt"><type>string</type><parameter>charset</parameter></methodparam>
+ <methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>ENT_COMPAT | ENT_HTML401</initializer></methodparam>
+ <methodparam choice="opt"><type>string</type><parameter>encoding</parameter><initializer>ini_get("default_charset")</initializer></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>double_encode</parameter><initializer>true</initializer></methodparam>
</methodsynopsis>
<para>
Функцията е идентична на <function>htmlspecialchars</function>
във всяко едно отношение, с изключение на това, че с <function>htmlentities</function>
- всички знаци, които имат съответстващи HTML единици, биват преобразувани в тези
- единици.
+ всички знаци, които имат съответстващи HTML единици, биват преобразувани в тези единици.
</para>
<para>
Ако искате да изпълните обратната операция, можете да използвате
@@ -41,15 +40,14 @@
</listitem>
</varlistentry>
<varlistentry>
- <term><parameter>quote_style</parameter></term>
+ <term><parameter>flags</parameter></term>
<listitem>
<para>
- Също както <function>htmlspecialchars</function>, незадължителният втори
- параметър <parameter>quote_style</parameter> указва как функцията да
- преобразува единичните и двойните кавички. Може да приеме като стойност
- една от трите константи, като по подразбиране е <constant>ENT_COMPAT</constant>:
+ Побитова маска на един или повече от следните флагове, която указва как се да се обработят кавичките,
+ невалидните кодови последователности и използвания туп на документа. Стойността по подразбиране е
+ <literal>ENT_COMPAT | ENT_HTML401</literal>.
<table>
- <title>Допустими <parameter>quote_style</parameter> константи</title>
+ <title>Допустими <parameter>flags</parameter> константи</title>
<tgroup cols="2">
<thead>
<row>
@@ -70,6 +68,55 @@
<entry><constant>ENT_NOQUOTES</constant></entry>
<entry>Оставя и двойните и единичните кавички без изменение.</entry>
</row>
+ <row>
+ <entry><constant>ENT_IGNORE</constant></entry>
+ <entry>
+ Тихо отхвърля невалидните кодови последователности, вместо да връща
+ празен низ. Употребата на този флаг не се препоръчва тъй като
+ <link xlink:href="&url.delete.nonchars;">може да внесе уязвимости в кода</link>.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_SUBSTITUTE</constant></entry>
+ <entry>
+ Заменя невалидните кодови последователности с Уникод
+ U+FFFD (при UTF-8) или &#FFFD; (при използване на друго кодиране), вместо да връща празен низ.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_DISALLOWED</constant></entry>
+ <entry>
+ Заменя неверните кодове на символи за зададен тип на документа с
+ Уникод U+FFFD (при UTF-8) или &#FFFD; (при използване на друго кодиране),
+ вместо да ги оставя както са си. Това може да е полезно, например
+ за осигуряване на добре форамтирани XML документи с
+ вградено външно съдържание.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_HTML401</constant></entry>
+ <entry>
+ Обработва кода като HTML 4.01.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_XML1</constant></entry>
+ <entry>
+ Обработва кода като XML 1.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_XHTML</constant></entry>
+ <entry>
+ Обработва кода като XHTML.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>ENT_HTML5</constant></entry>
+ <entry>
+ Обработва кода като HTML 5.
+ </entry>
+ </row>
</tbody>
</tgroup>
</table>
@@ -77,15 +124,9 @@
</listitem>
</varlistentry>
<varlistentry>
- <term><parameter>charset</parameter></term>
+ <term><parameter>encoding</parameter></term>
<listitem>
- <para>
- Също както <function>htmlspecialchars</function>, незадължителният трети
- аргумент <parameter>charset</parameter> указва набора от знаци
- който се използва при преобразуването. Поддръжката
- на този аргумент беше добавена в PHP 4.1.0.
- Понастоящем, наборът от знаци по подразбиране е ISO-8859-1.
- </para>
+ &strings.parameter.encoding;
&reference.strings.charsets;
</listitem>
</varlistentry>
@@ -105,8 +146,14 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
- Връща кодираните данни
+ Връща кодираните данни.
</para>
+ <para>
+ Ако входният параметър <parameter>string</parameter> съдържа невалидна кодова
+ последователност за указаното кодиране чрез <parameter>encoding</parameter>,
+ ще бъде върнат празен низ, освен ако не са установени флаговете
+ <constant>ENT_IGNORE</constant> или <constant>ENT_SUBSTITUTE</constant>
+ </para>
</refsect1>
<refsect1 role="changelog">
@@ -121,23 +168,33 @@
</row>
</thead>
<tbody>
+ &strings.changelog.encoding;
<row>
- <entry>5.2.3</entry>
+ <entry>5.4.0</entry>
<entry>
- Добавен е параметъра <parameter>double_encode</parameter>.
+ Стойността по подразбиране на параметъра <parameter>encoding</parameter> е
+ променена на UTF-8.
</entry>
</row>
<row>
- <entry>4.1.0</entry>
+ <entry>5.4.0</entry>
<entry>
- Добавен е параметъра <parameter>charset</parameter>.
+ Добавени са константите <constant>ENT_SUBSTITUTE</constant>, <constant>ENT_DISALLOWED</constant>,
+ <constant>ENT_HTML401</constant>, <constant>ENT_XML1</constant>,
+ <constant>ENT_XHTML</constant> и <constant>ENT_HTML5</constant>.
</entry>
- </row>
+ </row>
<row>
- <entry>4.0.3</entry>
+ <entry>5.3.0</entry>
<entry>
- Добавен е параметъра <parameter>quote_style</parameter>.
+ Добавена е константата <constant>ENT_IGNORE</constant>.
</entry>
+ </row>
+ <row>
+ <entry>5.2.3</entry>
+ <entry>
+ Добавен е параметъра <parameter>double_encode</parameter>.
+ </entry>
</row>
</tbody>
</tgroup>
@@ -155,16 +212,35 @@
<?php
$str = "'Цитатът' е <b>удебелен</b>";
-// Изход: 'Цитатът' е <b>удебелен</b>
+// Извежда: 'Цитатът' е <b>удебелен</b>
echo htmlentities($str);
-// Изход: 'Цитатът' е <b>удебелен</b>
+// Извежда: 'Цитатът' е <b>удебелен</b>
echo htmlentities($str, ENT_QUOTES);
?>
]]>
</programlisting>
</example>
</para>
+
+ <para>
+ <example>
+ <title>Употреба на <constant>ENT_IGNORE</constant></title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$str = "\x8F!!!";
+
+// Извежда празен низ
+echo htmlentities($str, ENT_QUOTES, "UTF-8");
+
+// Извежда "!!!"
+echo htmlentities($str, ENT_QUOTES | ENT_IGNORE, "UTF-8");
+?>
+]]>
+ </programlisting>
+ </example>
+ </para>
</refsect1>
<refsect1 role="seealso">