从文件地址中提取字符串

问题描述 投票:1回答:5

我有像“/files/temp/ABCDxyz-dfgdf.jpg”这样的字符串

我需要提取ABCD。首先,我试图用这个获取整个文件名

$file="/files/temp/ABCDxyz-dfgdf.jpg";
$fileName=explode("files/temp/",$file)[0];

但它没有用。

php string extract explode
5个回答
1
投票

使用basename获取没有目录的文件名:

$filename = basename($file); // => ABCDxyz-dfgdf.jpg
$beginning = substr($filename, 0, 4); // => ABCD

1
投票

你在寻找文件名的前四个字符吗?

如果你有一条路径:

$path = '/files/temp/ABCDxyz-dfgdf.jpg';

您可以使用substr获取文件名:

$filename = basename($path);

然后提取四个第一个字符:

$firstFour = substr($filename,0,4);
echo $firstFour;

1
投票

下面的代码导致了

ABCDxyz-dfgdf.jpg

你可以从这里开始提取ABCD

    $name = "/files/temp/ABCDxyz-dfgdf.jpg";

    $temp = explode("/files/temp/",$name);

    print "\n".$temp[1]; // give out ABCDxyz-dfgdf.jpg

1
投票

您可以使用此正则表达式获取路径后的前四个字符

$str = "/files/temp/ABCDxyz-dfgdf.jpg";
preg_match_all('/files\/temp\/([a-z]{4})/i',$str,$m);
echo $m[1][0];

1
投票

试试这段代码:

<?php

// your file
$file = '/files/temp/ABCDxyz-dfgdf.jpg';
$info = pathinfo($file);
$file_name =  basename($file,'.'.$info['extension']);
echo $file_name; 
$firstFour = substr($file_name,0,4);
echo $firstFour;

?>

输出: -

您的文件路径: - ABCDxyz-dfgdf

需要的输出:ABCD

参考例:Cilck Here

© www.soinside.com 2019 - 2024. All rights reserved.