从 SQL 列中获取数据并将其拆分以填充函数

Grabbing data from SQL column and splitting it to populate function

如果我从数据库中名为 image_store 的列中获取数据,例如:

/web/images/data/firstImage.png
/web/images/data/secondImage.png
/web/images/data/thirdImage.png

我想填充一个 setImage 函数,它将 /data/ 之后的字符串设置为文件名,将 /firstImage.png 之前的字符串设置为目录,例如:

$this->setImage('firstImage.png', '/web/images/data/')

有什么方法可以从数据库返回的字符串中获取所需的信息?

是的,只需使用 explode/implode 函数和 array_pop() 获取图像名称本身:

<?php
    $sqlArr = array('/web/images/data/firstImage.png', '/web/images/data/secondImage.png', '/web/images/data/thirdImage.png');
    foreach($sqlArr as $fullPath){
        $tmp = explode('/', $fullPath);
        $imgName = array_pop($tmp);
        $imgPath = implode('/', $tmp).'/';
        $this->setImage($imgName, $imgPath);
    }
?>

这将适用于任何深度的 url 路径。