PHP リアルパス

WBOY
WBOYオリジナル
2024-08-29 13:03:15664ブラウズ

PHP realpath() 関数は、絶対パス名を返すために使用されます。 realpath() 関数は、PHP の組み込み関数です。 realpath() 関数は、「/./」、「/../」、余分な文字「/」などのすべてのシンボリック リンクを削除し、これらの記号を除いた絶対パス名を返します。 realpath() 関数はパスをパラメータとして受け取り、成功した場合はパス パスの絶対パス名を返し、失敗した場合は false を返します。

広告 このカテゴリーの人気コース PHP 開発者 - 専門分野 | 8コースシリーズ | 3 つの模擬テスト

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

構文:

realpath(path);

パラメータ:

path: これは、絶対パスが返されるシンボリック リンクを含むパスを指定するオプションのパラメーター文字列タイプではありません。パスが空白または Null の場合、そのパスは現在のディレクトリとして解釈されます。

戻り値: このメソッドの戻り値は、成功した場合はシンボリック リンクのない絶対パス名、失敗した場合は false です。

PHP realpath() 関数の動作

  • これは、必須パラメータである 1 つのパラメータを (パス) として受け入れます。
  • 絶対パスを取得したいパス './././programs' があるとします。そのため、関数を realpath( './././programs' として呼び出して、このパスを渡す必要があります) )、シンボリック リンクなしで絶対パスを「C:xampphtdocsprograms」として返します。

言及されている例を以下に示します:

例 #1

ファイルの絶対パスを取得するための PHP realpath( ) 関数の例。

次に、PHP の realpath() 関数をより明確に確認するための PHP コードを作成します。次の例では、realpath() 関数を使用してファイルの絶対パスを取得します。

コード:

<?php
// file to get its real path
$file_path = "Ex.txt";
// return an absolute path using realpath() function
$abs_path = realpath( $file_path );
// printing the absolute path of the file
print( "The absolute path of the file is : " );
print( $abs_path );
print( "<br>");
?>

出力:

PHP リアルパス

上記のコードと同様に、絶対パス名は realpath() 関数を使用して「realpath( $file_path );」として生成されます。 $file_path 変数には、実行中のプログラム ファイルが存在するのと同じディレクトリに存在するファイルの名前が含まれます。

例 #2

指定されたパスの絶対パスを取得する PHP realpath() 関数の例。

次に、次の例で関数をより明確に確認するために PHP コードを作成します。ここでは、realpath() 関数を使用して、シンボリック リンクを含む指定されたパスの絶対パスを取得します。

コード:

<?php
// file to get its real path
$path = "../";
// return an absolute path
// of the current directory
// using realpath() function with NULL
$curr_path = realpath( NULL );
// return an absolute path after "../" path using realpath() function
$abs_path = realpath( $path );
// printing the absolute path of current directory
print( "The absolute path of the current directory is : " );
print( $curr_path );
print( "<br>");
// printing the absolute path for "../" path
print( "The absolute path for '../' path or after '../' path is : " );
print( $abs_path );
print( "<br>");
?>

出力:

PHP リアルパス

上記のコードと同様、realpath() 関数を使用して、現在の絶対パス名が「realpath( NULL );」として出力されます。値が NULL の場合、realpath() 関数は現在のディレクトリの絶対パス (「C:xampphtdocsprograms」) を返します。次に実行されるパスは「../」です。これは、前のディレクトリに戻ることを意味します。出力でわかるように、パスは「C:xampphtdocs」です。

例 #3

ディレクトリを変更して指定されたパスの絶対パスを取得する PHP realpath() 関数の例。

次に、次の例で関数をより明確に確認するために PHP コードを作成します。ここでは、realpath() 関数を使用して、指定されたパスの絶対パスを取得します。このパスには、変更ディレクトリへのシンボリック リンクが含まれています。

コード:

<?php
// change directory to /xampp/htdocs/
chdir( '/xampp/htdocs/' );
// move to next dirctory programs
// with './' symbolic linnk
$chdr = realpath( './programs' );
// Now printing the absolute path after './programs'
print( "The absolute path for './programs' path  is : " );
print( $chdr  );
print( "<br>" );
// move to back previous dirctory
// with './././programs' symbolic linnk and directory name
$path = realpath( './././programs' ) ;
print( "The absolute path for './././programs' path  is : " );
print( $path );
print( "<br>" );
$curr_path = realpath( NULL );
print( "The absolute path for current path  is : " );
print($curr_path);
?>

出力:

PHP リアルパス

上記のコードと同様に、chdir() 関数を使用して、現在のディレクトリ (「C:xampphtdocsprograms」として) を「xampphtdocs」に変更します。次に、パスには「./programs」としてシンボリック リンクが含まれており、これが realpath() 関数に与えられるため、この関数はシンボリック リンクを含まない「C:xampphtdocsprograms」として絶対パスを返します('./ ')。同様に、パス「./././programs」についても、「C:xampphtdocsprograms」として「C」ドライブからの絶対パスを返します。これには、シンボリック リンクが含まれていません(「./././」として)。 .

結論

これは PHP の組み込み関数であり、シンボリック リンクを含む、指定されたパスのシンボリック リンクを含まない絶対パス名を取得するために使用されます。

以上がPHP リアルパスの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。