svn: /phpdoc/bg/trunk/reference/strings/functions/ str-ireplace.xml str-replace.xml strcspn.xml
[email protected] (Stanislav Yordanov) Sat, 09 Apr 2016 16:20:46 +0000
| Newsgroups | php.doc.bg |
|---|---|
| Message-ID | <[email protected]> |
stanprog Sat, 09 Apr 2016 16:20:46 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=338976
Log:
sync with EN
Changed paths:
U phpdoc/bg/trunk/reference/strings/functions/str-ireplace.xml
U phpdoc/bg/trunk/reference/strings/functions/str-replace.xml
U phpdoc/bg/trunk/reference/strings/functions/strcspn.xml
svn-diffs-338976.txt
(text/x-diff, 15.7 KB)
Modified: phpdoc/bg/trunk/reference/strings/functions/str-ireplace.xml
===================================================================
--- phpdoc/bg/trunk/reference/strings/functions/str-ireplace.xml 2016-04-09 12:51:56 UTC (rev 338975)
+++ phpdoc/bg/trunk/reference/strings/functions/str-ireplace.xml 2016-04-09 16:20:46 UTC (rev 338976)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297028 Maintainer: stanprog Status: ready -->
+<!-- EN-Revision: 338513 Maintainer: stanprog Status: ready -->
<refentry xml:id="function.str-ireplace" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>str_ireplace</refname>
@@ -28,22 +28,38 @@
<refsect1 role="parameters">
&reftitle.parameters;
<para>
+ Ако <parameter>search</parameter> и <parameter>replace</parameter> са
+ масиви, тогава <function>str_ireplace</function> взема стойностите от всеки
+ масив и ги използва за търсене и замяна в
+ <parameter>subject</parameter>. Ако <parameter>replace</parameter> има по-малко
+ стойности от <parameter>search</parameter>, тогава се използва празен низ
+ за останалите стойности за замяна. Ако <parameter>search</parameter> е
+ масив, а <parameter>replace</parameter> - низ, този низ за замяна
+ се използва за всяка стойност от <parameter>search</parameter>.
+ Обратното няма особен смисъл.
+ </para>
+ <para>
+ Ако параметрите <parameter>search</parameter> и <parameter>replace</parameter>
+ са масиви, техните елементи ще бъдат обработени от първия към последния.
+ </para>
+ <para>
<variablelist>
<varlistentry>
<term><parameter>search</parameter></term>
<listitem>
- <note>
- <para>
- Всяка замяна с масива <parameter>search</parameter> се извършва на
- базата на резултата от предишната замяна.
- </para>
- </note>
+ <para>
+ Стойността, която се търси, позната още като <emphasis>needle</emphasis>.
+ За повече търсени стойности може да се използва
+ масив.
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>replace</parameter></term>
<listitem>
<para>
+ Стойността за замяна, която заменя намерените стойности на
+ <parameter>search</parameter>. За повече търсени стойности може да се използва масив.
</para>
</listitem>
</varlistentry>
@@ -51,6 +67,10 @@
<term><parameter>subject</parameter></term>
<listitem>
<para>
+ Низ или масив, в който се извършва търсенето и замяната,
+ познат още като <emphasis>haystack</emphasis>.
+ </para>
+ <para>
Ако <parameter>subject</parameter> е масив, то търсенето и замяната
се осъществяват с всеки елемент на <parameter>subject</parameter>.
Върнатата стойност също е масив.
@@ -61,25 +81,12 @@
<term><parameter>count</parameter></term>
<listitem>
<para>
- Броят на срещнатите и заменени <parameter>needles</parameter> ще бъде
- върнат в параметъра <parameter>count</parameter>, който се предава
- по референция.
+ Ако този параметър е предаден, ще бъде установен на броя на направените замени.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
- <para>
- Ако <parameter>search</parameter> и
- <parameter>replace</parameter> са масиви, тогава
- <function>str_ireplace</function> взема стойностите от всеки масив
- и ги използва за търсене и замяна в <parameter>subject</parameter>.
- Ако <parameter>replace</parameter> има по-малко стойности от
- <parameter>search</parameter>, тогава се използва празен низ
- за останалите стойности за замяна.
- Ако <parameter>search</parameter> е масив, а <parameter>replace</parameter> - низ,
- този низ за замяна се използва за всяка стойност от <parameter>search</parameter>.
- </para>
</refsect1>
<refsect1 role="returnvalues">
@@ -89,30 +96,6 @@
</para>
</refsect1>
- <refsect1 role="changelog">
- &reftitle.changelog;
- <para>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>&Version;</entry>
- <entry>&Description;</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>5.0.0</entry>
- <entry>
- Добавен е параметърът <parameter>count</parameter>.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </refsect1>
-
<refsect1 role="examples">
&reftitle.examples;
<para>
@@ -122,6 +105,7 @@
<![CDATA[
<?php
$bodytag = str_ireplace("%body%", "black", "<body text=%BODY%>");
+echo $bodytag; // <body text=black>
?>
]]>
</programlisting>
@@ -132,6 +116,15 @@
<refsect1 role="notes">
&reftitle.notes;
¬e.bin-safe;
+ <caution>
+ <title>Потенциални проблеми с реда на замяна</title>
+ <para>
+ Тъй като <function>str_ireplace</function> заменя от ляво на дясно, може
+ да замени предходно вмъкната стойност, при извършване на множествени замени.
+ Пример №2 в документацията на <function>str_replace</function>
+ пояснява как това работи на практика.
+ </para>
+ </caution>
</refsect1>
<refsect1 role="seealso">
Modified: phpdoc/bg/trunk/reference/strings/functions/str-replace.xml
===================================================================
--- phpdoc/bg/trunk/reference/strings/functions/str-replace.xml 2016-04-09 12:51:56 UTC (rev 338975)
+++ phpdoc/bg/trunk/reference/strings/functions/str-replace.xml 2016-04-09 16:20:46 UTC (rev 338976)
@@ -30,15 +30,14 @@
<refsect1 role="parameters">
&reftitle.parameters;
<para>
- Ако <parameter>search</parameter> и
- <parameter>replace</parameter> са масиви, тогава
- <function>str_replace</function> взема стойностите от всеки масив
- и ги използва за търсене и замяна в <parameter>subject</parameter>.
- Ако <parameter>replace</parameter> има по-малко стойности от
- <parameter>search</parameter>, тогава се използва празен низ
- за останалите стойности за замяна.
- Ако <parameter>search</parameter> е масив, а <parameter>replace</parameter> - низ,
- този низ за замяна се използва за всяка стойност от <parameter>search</parameter>.
+ Ако <parameter>search</parameter> и <parameter>replace</parameter> са
+ масиви, тогава <function>str_replace</function> взема стойностите от всеки
+ масив и ги използва за търсене и замяна в
+ <parameter>subject</parameter>. Ако <parameter>replace</parameter> има по-малко
+ стойности от <parameter>search</parameter>, тогава се използва празен низ
+ за останалите стойности за замяна. Ако <parameter>search</parameter> е
+ масив, а <parameter>replace</parameter> - низ, този низ за замяна
+ се използва за всяка стойност от <parameter>search</parameter>.
Обратното няма особен смисъл.
</para>
<para>
Modified: phpdoc/bg/trunk/reference/strings/functions/strcspn.xml
===================================================================
--- phpdoc/bg/trunk/reference/strings/functions/strcspn.xml 2016-04-09 12:51:56 UTC (rev 338975)
+++ phpdoc/bg/trunk/reference/strings/functions/strcspn.xml 2016-04-09 16:20:46 UTC (rev 338976)
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 297028 Maintainer: stanprog Status: ready -->
+<!-- EN-Revision: 338016 Maintainer: stanprog Status: ready -->
<refentry xml:id="function.strcspn" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>strcspn</refname>
@@ -11,16 +11,24 @@
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>strcspn</methodname>
- <methodparam><type>string</type><parameter>str1</parameter></methodparam>
- <methodparam><type>string</type><parameter>str2</parameter></methodparam>
+ <methodparam><type>string</type><parameter>subject</parameter></methodparam>
+ <methodparam><type>string</type><parameter>mask</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>start</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>length</parameter></methodparam>
</methodsynopsis>
<para>
Връща дължината на сегмент в началото на низа
- <parameter>str1</parameter>, която <emphasis>не</emphasis>
- съдържа никой от указаните в <parameter>str2</parameter> знаци.
+ <parameter>subject</parameter>, която <emphasis>не</emphasis>
+ съдържа никой от указаните в <parameter>mask</parameter> знаци.
</para>
+ <para>
+ Ако параметрите <parameter>start</parameter> и <parameter>length</parameter>
+ не са указани, то ще се изследва целия низ <parameter>subject</parameter>.
+ Ако са указани, ефектът ще бъде същият, като
+ извикването на <literal>strcspn(substr($subject, $start, $length),
+ $mask)</literal> (вж. <xref linkend="function.substr" />
+ за повече информация).
+ </para>
</refsect1>
<refsect1 role="parameters">
@@ -28,18 +36,18 @@
<para>
<variablelist>
<varlistentry>
- <term><parameter>str1</parameter></term>
+ <term><parameter>subject</parameter></term>
<listitem>
<para>
- Първият низ.
+ Изследваният низ.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><parameter>str2</parameter></term>
+ <term><parameter>mask</parameter></term>
<listitem>
<para>
- Вторият низ.
+ Списък на позволените знаци.
</para>
</listitem>
</varlistentry>
@@ -47,16 +55,47 @@
<term><parameter>start</parameter></term>
<listitem>
<para>
- Началната позиция на изследвания низ.
+ Позицията в <parameter>subject</parameter> за
+ начало на търсенето.
</para>
+ <para>
+ Ако <parameter>start</parameter> е указан и е неотрицателен,
+ то <function>strcspn</function> ще започне с
+ разглеждането на <parameter>subject</parameter> започвайки от
+ позиция <parameter>start</parameter>. Например в
+ низа '<literal>abcdef</literal>', знакът на
+ позиция <literal>0</literal> е '<literal>a</literal>', знака на
+ позиция <literal>2</literal> е
+ '<literal>c</literal>'и така нататък.
+ </para>
+ <para>
+ Ако <parameter>start</parameter> е указан и е отрицателен,
+ то <function>strcspn</function> ще започне с
+ разглеждането на <parameter>subject</parameter> започвайки от
+ позиция <parameter>start</parameter> от края на
+ <parameter>subject</parameter>.
+ </para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>length</parameter></term>
<listitem>
<para>
- Дължината на изследвания низ.
+ Дължината на сегмента от <parameter>subject</parameter>
+ за изследване.
</para>
+ <para>
+ Ако <parameter>length</parameter> е указан и неотрицателен,
+ то низът <parameter>subject</parameter> ще бъде изследван от
+ за <parameter>length</parameter> знака от стартовата
+ позиция.
+ </para>
+ <para>
+ Ако <parameter>length</parameter> е указан и отрицателен,
+ то низът <parameter>subject</parameter> ще бъде изследван от
+ началната позиция до <parameter>length</parameter>
+ знака от края на <parameter>subject</parameter>.
+ </para>
</listitem>
</varlistentry>
</variablelist>
@@ -66,39 +105,60 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
- Връща дължината на сегмента в целочислен вид.
+ Връща дължината на сегмент от началото на <parameter>subject</parameter>,
+ който се състои от всички символи в които <emphasis>не</emphasis> са в <parameter>mask</parameter>.
</para>
+ <note>
+ <para>
+ Когато параметърът <parameter>start</parameter> е установен, върнатата дължина
+ се брои от тази позиция, а не от началото на
+ <parameter>subject</parameter>.
+ </para>
+ </note>
</refsect1>
- <refsect1 role="changelog">
- &reftitle.changelog;
- <para>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>&Version;</entry>
- <entry>&Description;</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>4.3.0</entry>
- <entry>
- Добавени бяха параметрите <parameter>start</parameter> и <parameter>length</parameter>
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
+ <refsect1 role="examples">
+ &reftitle.examples;
+ <example xml:id="strcspn.example">
+ <title>Пример за <function>strcspn</function></title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$a = strcspn('abcd', 'apple');
+$b = strcspn('abcd', 'banana');
+$c = strcspn('hello', 'l');
+$d = strcspn('hello', 'world');
+$e = strcspn('abcdhelloabcd', 'abcd', -9);
+$f = strcspn('abcdhelloabcd', 'abcd', -9, -5);
+
+var_dump($a);
+var_dump($b);
+var_dump($c);
+var_dump($d);
+var_dump($e);
+var_dump($f);
+?>
+]]>
+ </programlisting>
+ &example.outputs;
+ <screen>
+<![CDATA[
+int(0)
+int(0)
+int(2)
+int(2)
+int(5)
+int(4)
+]]>
+ </screen>
+ </example>
</refsect1>
-
+
<refsect1 role="notes">
&reftitle.notes;
¬e.bin-safe;
</refsect1>
-
+
<refsect1 role="seealso">
&reftitle.seealso;
<para>
@@ -107,7 +167,7 @@
</simplelist>
</para>
</refsect1>
-
+
</refentry>
<!-- Keep this comment at the end of the file