1
0
mirror of https://github.com/php/doc-zh.git synced 2026-03-25 23:52:17 +01:00
Files
mowangjuanzi 6a05d32f1a Update strings
2025-06-30 23:26:12 +08:00

160 lines
4.3 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 45042fef652f1b4e904e809fcbfcf31f6c60670b Maintainer: daijie Status: ready -->
<!-- CREDITS: mowangjuanzi, Luffy -->
<refentry xml:id="function.strstr" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>strstr</refname>
<refpurpose>查找字符串的首次出现</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>strstr</methodname>
<methodparam><type>string</type><parameter>haystack</parameter></methodparam>
<methodparam><type>string</type><parameter>needle</parameter></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>before_needle</parameter><initializer>&false;</initializer></methodparam>
</methodsynopsis>
<para>
返回 <parameter>haystack</parameter> 字符串从 <parameter>needle</parameter> 第一次出现的位置开始到 <parameter>haystack</parameter> 结尾的字符串。
</para>
<note>
<para>
该函数区分大小写。如果想要不区分大小写,请使用 <function>stristr</function>
</para>
</note>
<note>
<para>
如果只需要确定特定的 <parameter>needle</parameter> 是否存在于 <parameter>haystack</parameter> 中,应该使用更快且更少占用内存的 <function>str_contains</function> 函数。
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>haystack</parameter></term>
<listitem>
<para>
输入字符串。
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>needle</parameter></term>
<listitem>
<para>
要搜索的字符串。
</para>
&strings.parameter.needle.non-string;
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>before_needle</parameter></term>
<listitem>
<para>
若为 &true;<function>strstr</function> 将返回 <parameter>needle</parameter><parameter>haystack</parameter> 中的位置之前的部分。
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
返回字符串的一部分或者 &false;(如果未发现 <parameter>needle</parameter>)。
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
&strings.changelog.needle-empty;
<row>
<entry>8.0.0</entry>
<entry>
不再支持传递 &integer; 作为 <parameter>needle</parameter>
</entry>
</row>
<row>
<entry>7.3.0</entry>
<entry>
弃用传递 &integer; 作为 <parameter>needle</parameter>
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title><function>strstr</function> 示例</title>
<programlisting role="php">
<![CDATA[
<?php
$email = 'name@example.com';
$domain = strstr($email, '@');
echo $domain, PHP_EOL; // 打印 @example.com
$user = strstr($email, '@', true);
echo $user, PHP_EOL; // 打印 name
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>preg_match</function></member>
<member><function>stristr</function></member>
<member><function>strpos</function></member>
<member><function>strrchr</function></member>
<member><function>substr</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->