PHPファイルパス関数LOGIN

PHPファイルパス関数

ファイルパスを処理する状況によく遭遇します。

例:

1. ファイルのサフィックスを取り出す必要があります

2. パスはディレクトリではなく名前を取り出す必要があります

3. パス名内のディレクトリ パスを取り出すだけです

4. または、URL のすべての部分を独立して分析します。 5. 自己形成 URL も出力します

....


多くの場所でパス処理クラスの関数を使用する必要があります。

一般的に使用されるパス処理関数を誰でも簡単に処理できるようにしました:

関数名パス情報 Basenamedirnameparse_urlhttp_build_queryhttp_build_url
関数
各ファイルを返すコンポーネント
ファイル名を返す
ファイルディレクトリの部分
URLを部分に分割
URL文字列でクエリを生成
URLを生成します
pathinfo

array pathinfo ( string $路径)
功能:传入文件路径返回文件的各个组成部份
具体的な例を使用してみましょう:

<?php
$path_parts = pathinfo('d:/www/index.inc.php');

echo '文件目录名:'.$path_parts['dirname']."<br />";
echo '文件全名:'.$path_parts['basename']."<br />";
echo '文件扩展名:'.$path_parts['extension']."<br />";
echo '不包含扩展的文件名:'.$path_parts['filename']."<br />"; 
?>

結果は次のようになります:

文件目录名:d:/www
文件全名:lib.inc.php
文件扩展名:php
不包含扩展的文件名:lib.inc

basename

string basename ( string $路径[, string $suffix ])
功能:传入路径返回文件名
第一个参数传入路径。
第二个参数,指定我文件名到了指定字符停止。
<?php 

echo "1: ".basename("d:/www/index.d", ".d").PHP_EOL;
echo "2: ".basename("d:/www/index.php").PHP_EOL;
echo "3: ".basename("d:/www/passwd").PHP_EOL;

?>

実行結果は次のとおりです

1: index
2: index.php
3: passwd

dirname れぇぇぇぇぇぇ結論: これを実行して、ファイルのディレクトリ部分が返されるかどうかを確認できます。

parse_url

dirname(string $路径) 
功能:返回文件路径的文件目录部份
<?php 
dirname(__FILE__); 
?>
結果は次のとおりです:

mixed parse_url ( string $路径 )
功能:将网址拆解成各个部份

http_build_query

<?php
$url = 'http://username:password@hostname:9090/path?arg=value#anchor';

var_dump(parse_url($url));

?>
array(8) {
["scheme"]=> string(4) "http"
["host"]=> string(8) "hostname"
["port"]=> int(9090)
["user"]=> string(8) "username"
["pass"]=> string(8) "password"
["path"]=> string(5) "/path"
["query"]=> string(9) "arg=value"
["fragment"]=> string(6) "anchor"
}
結果は次のとおりです:

username=php&area=hubei

http_build_ url()

関数: url
注:

PHP_EOL 定数

は、Windows プラットフォームの echo "rn" に相当し、
は、unixlinux プラットフォームの echo "n" に相当します。次のセクション

<?php //定义一个关联数组 $data = [ 'username'=>'php', 'area'=>'hubei' ]; //生成query内容 echo http_build_query($data); ?>
コースウェア