PHP 파일 경로 함수

파일 경로를 처리하는 상황이 자주 발생합니다.

예:

1. 파일 접미사를 제거해야 합니다.

2. 경로에서 이름을 제거해야 하지만 디렉터리는 제외해야 합니다

3. 경로명에 디렉터리 경로만 빼내세요

4. 아니면 URL의 각 부분을 파싱해서 독립적인 값을 얻습니다 ​​

5. 아니면 심지어 url을 직접
... .. ..

경로 처리 클래스 기능은 여러 곳에서 필요합니다.

모든 사람이 일반적으로 사용하는 경로 처리 기능을 표시했습니다.

函数名功能
pathinfo返回文件的各个组成部份
basename返回文件名
dirname文件目录部份
parse_url网址拆解成各部份
http_build_query生成url 中的query字符串
http_build_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

dirname(string $路径) 
功能:返回文件路径的文件目录部份
<?php 
dirname(__FILE__); 
?>

결론: 실행하면 파일의 디렉터리 부분이 반환되는지 확인할 수 있습니다.

parse_url

mixed parse_url ( string $路径 )
功能:将网址拆解成各个部份
<?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"
}

http_build_query

string http_build_query ( mixed $需要处理的数据)
功能:生成url 中的query字符串
<?php
//定义一个关联数组
$data = [
       'username'=>'php',
       'area'=>'hubei'
        ];

//生成query内容
echo http_build_query($data);
?>

결과는 다음과 같습니다.

username=php&area=hubei

http_build_url()
기능: URL 생성

참고 :
PHP_EOL 상수
Windows 플랫폼의 echo "rn"과 동일;
unixlinux 플랫폼의 echo "n"과 동일;
Mac 플랫폼의 echo "r"과 동일;

지속적인 학습
||
<?php //定义一个关联数组 $data = [ 'username'=>'php', 'area'=>'hubei' ]; //生成query内容 echo http_build_query($data); ?>
  • 코스 추천
  • 코스웨어 다운로드
현재 코스웨어를 다운로드할 수 없습니다. 현재 직원들이 정리하고 있습니다. 앞으로도 본 강좌에 많은 관심 부탁드립니다~