mirror of
https://github.com/php/doc-ru.git
synced 2025-08-15 23:42:35 +00:00
Update realpath.xml
This commit is contained in:
@ -14,9 +14,10 @@
|
||||
<methodparam><type>string</type><parameter>path</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
<function>realpath</function> раскрывает все символические ссылки,
|
||||
переходы типа <literal>/./</literal>, <literal>/../</literal> и лишние символы <literal>/</literal> в пути <parameter>path</parameter>,
|
||||
возвращая канонизированный абсолютный путь к файлу.
|
||||
Функция <function>realpath</function> разворачивает символические ссылки,
|
||||
а также разрешает ссылки на относительные пути вида <literal>/./</literal>, <literal>/../</literal>
|
||||
и лишние символы <literal>/</literal> во входном пути <parameter>path</parameter>,
|
||||
а затем возвращает канонизированный абсолютный путь к файлу.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
@ -31,9 +32,8 @@
|
||||
Проверяемый путь.
|
||||
<note>
|
||||
<para>
|
||||
Несмотря на то, что путь должен быть указан, переданное
|
||||
значение может быть пустой строкой. В этих случаях
|
||||
значение интерпретируется как текущая рабочая директория.
|
||||
Параметр пути хотя и обязательный, но принимает пустую строку.
|
||||
Тогда функция интерпретирует значение как текущий каталог.
|
||||
</para>
|
||||
</note>
|
||||
</para>
|
||||
@ -46,38 +46,38 @@
|
||||
<refsect1 role="returnvalues">
|
||||
&reftitle.returnvalues;
|
||||
<para>
|
||||
В случае успешного выполнения возвращает канонизированный абсолютный путь.
|
||||
Результирующий путь не содержит символических ссылок и компонентов
|
||||
наподобие <literal>/./</literal> или '<literal>/../</literal>.
|
||||
Разделители <literal>\</literal> и <literal>/</literal> в конце пути также удаляются.
|
||||
Функция возвращает канонизированный абсолютный путь к файлу в случае успешного выполнения.
|
||||
Результирующий путь не будет содержать символической ссылки и компонентов
|
||||
<literal>/./</literal> или <literal>/../</literal>.
|
||||
Функци также удалит разделители <literal>\</literal> и <literal>/</literal> в конце пути.
|
||||
</para>
|
||||
<para>
|
||||
<function>realpath</function> возвращает &false; при неудаче, например,
|
||||
Функция <function>realpath</function> возвращает &false;, если возникла ошибка, например,
|
||||
если файл не существует.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
Запускаемый скрипт должен иметь права запуска на всех директориях
|
||||
в проверяемой иерархии, иначе <function>realpath</function> вернёт &false;.
|
||||
Для скрипта, который запустили, требуются права на выполнение на каждом каталоге
|
||||
в иерархии, иначе функция <function>realpath</function> вернёт &false;.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<para>
|
||||
Для регистронезависимых файловых систем, <function>realpath</function> может
|
||||
нормализовать или не нормализовать регистр символов.
|
||||
В регистронезависимых файловых системах функция <function>realpath</function>
|
||||
нормализует или не нормализует регистр символов.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<para>
|
||||
Функция <function>realpath</function> не будет работать с
|
||||
файлом внутри архива Phar, так как путь может быть
|
||||
не реальным, а виртуальным.
|
||||
Функция <function>realpath</function> не будет работать
|
||||
с файлом внутри Phar-архива, поскольку такой путь будет виртуальным,
|
||||
а не реальным.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<para>
|
||||
В Windows переходы и символические ссылки на каталоги расширяются только
|
||||
на один уровень.
|
||||
В ОС Windows точки соединения и символические ссылки на каталоги разворачиваются
|
||||
только на один уровень.
|
||||
</para>
|
||||
</note>
|
||||
&fs.file.32bit;
|
||||
@ -91,10 +91,12 @@
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
chdir('/var/www/');
|
||||
echo realpath('./../../etc/passwd') . PHP_EOL;
|
||||
|
||||
echo realpath('/tmp/') . PHP_EOL;
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
@ -107,17 +109,19 @@ echo realpath('/tmp/') . PHP_EOL;
|
||||
</screen>
|
||||
</example>
|
||||
<example>
|
||||
<title><function>realpath</function> на Windows</title>
|
||||
<title>Пример работы функции <function>realpath</function> в ОС Windows</title>
|
||||
<para>
|
||||
На Windows <function>realpath</function> изменит пути стиля Unix на
|
||||
стиль Windows.
|
||||
В системах Windows функция <function>realpath</function> изменит пути в стиле Unix
|
||||
на стиль Windows.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
echo realpath('/windows/system32'), PHP_EOL;
|
||||
|
||||
echo realpath('C:\Program Files\\'), PHP_EOL;
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
|
Reference in New Issue
Block a user