php文件名到特定字符

时间:2012-08-13 18:40:31

标签: php wordpress

您好我正在尝试让php返回一个文件名并返回该字符串作为将由javascript插件使用的rel标记的一部分。

我需要添加一些php脚本来将文件名字符串返回到第二个hyphon: 到目前为止我有

<?php 
$filename = basename ( get_attached_file( get_post_thumbnail_id() ) ); 
?>
<?php echo pathinfo($filename, PATHINFO_FILENAME); ?>

它返回

tulip-367-011文件名是tulip-367-011.jpg如何让它返回tulip-367

你好我试过

<?php 
$filename = basename ( get_attached_file( get_post_thumbnail_id() ) ); 
?>
<?php echo $file_parts = explode('-', basename($filename)); 
array_pop($file_parts); // Remove the last segment 
$split_name = implode('-', $file_parts); 
?>

它返回了阵列 - 不是伊万!那真的让我笑了起来,我已经被这一周困扰了一周。再次感谢您的帮助,我将继续努力。我不是一个非常优秀的程序员,所以请随意嘲笑我的愚蠢。 ASA

我试过

$file_parts = explode('-', basename($filename)); 
array_pop($file_parts); // Remove the last segment 
$split_name = implode('-', $file_parts); 

它还说Array。再次感谢您的帮助。

3 个答案:

答案 0 :(得分:1)

只需使用basename代替fileinfo

示例:

$file_without_extension = basename($filename)

修改

抱歉,我误解了原来的问题,假设文件名一致,要删除最后一段,请执行以下操作:

$file_parts = explode('-', basename($filename));
array_pop($file_parts); // Remove the last segment
$split_name = implode('-', $file_parts;

答案 1 :(得分:0)

$fileParts = pathinfo(get_attached_file( get_post_thumbnail_id()));
$nameParts = explode('-', $fileParts['basename']);
if (count($nameParts) > 1) {
    $myName = $nameParts[0]+'-'+$nameParts[1];
} else {
    $myName = $nameParts[0];
}

答案 2 :(得分:0)

这解决了它:

<?php 
$filename = basename ( get_attached_file( get_post_thumbnail_id() ) ); 
$file_parts = explode('-', basename($filename)); 
array_pop($file_parts); // Remove the last segment 
$split_name = implode('-', $file_parts); 
echo $split_name;
?>

<a itemprop="image" href="<?php echo wp_get_attachment_url( get_post_thumbnail_id() ); ?>" class="Magic360" rel="filename:<?php echo $split_name?>-{col}.jpg; magnify:true; magnify-filename:<?php echo get_post_meta($post->ID, 'magnified_image_filename', true); ?>-{col}.jpg"><img src="<?php echo get_post_meta($post->ID, 'magnified_image', true); ?>"