dongshen9058 2012-11-17 23:16
浏览 56
已采纳

如何从PHP数组中的每个字符串中删除文件扩展名?

I have an array of strings, each string containing the name of an image file:

$slike=(1.jpg,253455.jpg,32.jpg,477.jpg);

I want new array, to look like this:

$slike=(1,253455,32,477);

How can I remove the file extension from each string in this array?

  • 写回答

4条回答 默认 最新

  • duanla1996 2012-11-17 23:19
    关注

    If you're working with filenames, use PHP's built in pathinfo() function. there's no need to use regex for this.

    <?php
    
    # your array
    $slike = array('1.jpg','253455.jpg','32.jpg','477.jpg');
    
    # if you have PHP >= 5.3, I'd use this
    $slike = array_map(function($e){
        return pathinfo($e, PATHINFO_FILENAME);
    }, $slike);
    
    # if you have PHP <= 5.2, use this
    $slike = array_map('pathinfo', $slike, array_fill(
        0, count($slike), PATHINFO_FILENAME
    ));
    
    # dump
    print_r($slike);    
    

    Output

    Array
    (
        [0] => 1
        [1] => 253455
        [2] => 32
        [3] => 477
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 银河麒麟操作系统无法使用U盘
  • ¥100 寻找:光电二极管电路设计服务
  • ¥15 YOLOv5改进后的结构图
  • ¥15 全志v3s怎么设置高速时钟,使用的荔枝派zero开发板,串口2需要921600的波特率
  • ¥15 关于#单片机#的问题:Lora通讯模块hc-14电路图求内部原理图
  • ¥50 esp32 wroom 32e 芯片解锁
  • ¥15 bywave配置文件写入失败
  • ¥20 基于Simulink的ZPW2000轨道电路仿真
  • ¥15 pycharm找不到在环境装好的opencv-python
  • ¥15 在不同的执行界面调用同一个页面