mirror of
https://github.com/php/doc-ja.git
synced 2026-04-24 08:28:13 +02:00
be7a5ed14c
For basename(), we declare the behavior regarding invalid characters in the path as being undefined, since that depends on the availability of mblen, and also on the position of the invalid characters prior to PHP 8.0.0[1]. dirname() is actually not local-aware, but relies on an ASCII compatible character encoding regarding the directory separator. On Windows, it is however, dependent on the currently set codepage (although a fallback is still in place to use the Windows ANSI codepage of the operating system[2], if the string is not valid for the current codepage). Again, we declared failure to comply to these assumptions as resulting in undefined behavior. Users should make sure to pass valid strings. [1] <http://git.php.net/?p=php-src.git;a=commitdiff;h=90705d44e3da1d0aa7b8b4fd921ec597391eccb2> [2] <https://github.com/php/php-src/blob/5e015425263c28d40fd49ee386135f02d0e76975/win32/codepage.h#L95-L106>
141 lines
3.9 KiB
XML
141 lines
3.9 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 88c1f8d6c9fecf352c5ce152a6f758ed013fc2c0 Maintainer: hirokawa Status: ready -->
|
|
<!-- Credits: mumumu -->
|
|
<refentry xml:id="function.basename" xmlns="http://docbook.org/ns/docbook">
|
|
<refnamediv>
|
|
<refname>basename</refname>
|
|
<refpurpose>パスの最後にある名前の部分を返す</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsect1 role="description">
|
|
&reftitle.description;
|
|
<methodsynopsis>
|
|
<type>string</type><methodname>basename</methodname>
|
|
<methodparam><type>string</type><parameter>path</parameter></methodparam>
|
|
<methodparam choice="opt"><type>string</type><parameter>suffix</parameter><initializer>""</initializer></methodparam>
|
|
</methodsynopsis>
|
|
<para>
|
|
ファイルあるいはディレクトリへのパスを含む文字列を受け取って、
|
|
最後にある名前の部分を返します。
|
|
</para>
|
|
<note>
|
|
<para>
|
|
<function>basename</function> は、入力文字列を単純にそのまま処理します。
|
|
実際のファイルシステムを確認したり
|
|
"<literal>..</literal>" のようなパスを気にしたりすることはありません。
|
|
</para>
|
|
</note>
|
|
<caution>
|
|
<para>
|
|
<function>basename</function> はロケールに依存します。
|
|
マルチバイト文字を含むパスで正しい結果を得るには、それと一致するロケールを
|
|
<function>setlocale</function> で設定しておかなければなりません。
|
|
現在のロケールから見て不正な文字が <parameter>path</parameter> に含まれていた場合、
|
|
<function>basename</function> の動作は未定義です。
|
|
</para>
|
|
</caution>
|
|
</refsect1>
|
|
|
|
<refsect1 role="parameters">
|
|
&reftitle.parameters;
|
|
<para>
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><parameter>path</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
パス。
|
|
</para>
|
|
<para>
|
|
Windows では、スラッシュ(<literal>/</literal>) とバックスラッシュ
|
|
(<literal>\</literal>) の両方がディレクトリ区切り文字として使われます。
|
|
その他の環境ではスラッシュ(<literal>/</literal>)になります。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
<varlistentry>
|
|
<term><parameter>suffix</parameter></term>
|
|
<listitem>
|
|
<para>
|
|
名前の部分が
|
|
<parameter>suffix</parameter> で終了する場合、
|
|
この部分もカットされます。
|
|
</para>
|
|
</listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="returnvalues">
|
|
&reftitle.returnvalues;
|
|
<para>
|
|
指定した <parameter>path</parameter> のベース名を返します。
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="examples">
|
|
&reftitle.examples;
|
|
<para>
|
|
<example>
|
|
<title><function>basename</function> の例</title>
|
|
<programlisting role="php">
|
|
<![CDATA[
|
|
<?php
|
|
echo "1) ".basename("/etc/sudoers.d", ".d").PHP_EOL;
|
|
echo "2) ".basename("/etc/sudoers.d").PHP_EOL;
|
|
echo "3) ".basename("/etc/passwd").PHP_EOL;
|
|
echo "4) ".basename("/etc/").PHP_EOL;
|
|
echo "5) ".basename(".").PHP_EOL;
|
|
echo "6) ".basename("/");
|
|
?>
|
|
]]>
|
|
</programlisting>
|
|
&example.outputs;
|
|
<screen>
|
|
<![CDATA[
|
|
1) sudoers
|
|
2) sudoers.d
|
|
3) passwd
|
|
4) etc
|
|
5) .
|
|
6)
|
|
]]>
|
|
</screen>
|
|
</example>
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1 role="seealso">
|
|
&reftitle.seealso;
|
|
<para>
|
|
<simplelist>
|
|
<member><function>dirname</function></member>
|
|
<member><function>pathinfo</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
|
|
-->
|