php在文件扩展名之前添加文本

时间:2014-04-26 17:40:14

标签: php wordpress image replace

我试图添加文字" -250x250"在链接媒体文件的扩展之前。我使用以下代码:

$ext = substr($image, strrpos($image, "."));
$thumb = basename($image, $ext) . "-250x250" . $ext;

我遇到的问题是,这似乎也剥夺了文件名之前的所有内容,因此$ image可能会输出为http://www.skizzar.com/template-fox/files/2014/04/fox3.jpg。 $ thumb仅输出fox3-250x250.jpg

有没有办法阻止我的代码剥离通往该文件的路径?

2 个答案:

答案 0 :(得分:2)

试试这个。

$fileName = ' http://www.skizzar.com/template-fox/files/abc.jpg';
$fileArray = pathinfo($fileName);
echo $fileArray['dirname'].'/'.$fileArray['filename'].'-250x250'.'.'.$fileArray['extension'];

这是一个有效的演示。

Demo

答案 1 :(得分:1)

add_image_size( 'my-size', 250, 250, true );
function my_thumb( $size = 'my-size' ){
    global $post;

        $image_id = get_post_thumbnail_id($post->ID);  
        $image_url = wp_get_attachment_image($image_id, $size , false, array( 'alt'   => get_the_title() ,'title' =>  get_the_title()  ));  
        echo $image_url;
    }

然后在循环中使用my_thumb函数,例如:

<img src="<?php echo my_thumb('my-size'); ?>" />

注意:这也会调整媒体文件的大小