我有像“/files/temp/ABCDxyz-dfgdf.jpg”这样的字符串
我需要提取ABCD。首先,我试图用这个获取整个文件名
$file="/files/temp/ABCDxyz-dfgdf.jpg";
$fileName=explode("files/temp/",$file)[0];
但它没有用。
使用basename
获取没有目录的文件名:
$filename = basename($file); // => ABCDxyz-dfgdf.jpg
$beginning = substr($filename, 0, 4); // => ABCD
你在寻找文件名的前四个字符吗?
如果你有一条路径:
$path = '/files/temp/ABCDxyz-dfgdf.jpg';
您可以使用substr获取文件名:
$filename = basename($path);
然后提取四个第一个字符:
$firstFour = substr($filename,0,4);
echo $firstFour;
下面的代码导致了
ABCDxyz-dfgdf.jpg
你可以从这里开始提取ABCD
$name = "/files/temp/ABCDxyz-dfgdf.jpg";
$temp = explode("/files/temp/",$name);
print "\n".$temp[1]; // give out ABCDxyz-dfgdf.jpg
您可以使用此正则表达式获取路径后的前四个字符
$str = "/files/temp/ABCDxyz-dfgdf.jpg";
preg_match_all('/files\/temp\/([a-z]{4})/i',$str,$m);
echo $m[1][0];
试试这段代码:
<?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