PHP - 获取这些值的更好方法?

标签 php regex substr

$image= "some-name-of-my-image-640x480-123.jpg"

我需要提取 640x480123

现在对我有用的是:

list($dirname, $basename, $extension, $filename) = array_values(pathinfo($image));
$new = substr($filename, 0, strrpos($filename, '-')); //some-name-of-my-image-640x480
$post_id = substr($filename, strrpos($filename, '-')+1); //123
$resolution = substr($new, strrpos($new, '-')+1); //640x480

有没有更简单(更智能)的方法来完成同样的事情?

最佳答案

对于任何对正则表达式过敏且使用 PHP >= 5.2.0 的人:

$data = array_slice(explode('-', pathinfo($image, PATHINFO_FILENAME)), -2);     

$data中你会得到:

Array
(
    [0] => 640x480
    [1] => 123
)

关于PHP - 获取这些值的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20029475/

相关文章:

php - 如何在php中使用J修饰符?

php - 使用 array_filter 时意外的 php 通知和警告

php - 在不使用 ON CASCADE 的情况下在 PHP 代码的各行中准备语句

javascript - 正则表达式匹配太多

php - 如何防止显示菱形问号符号,即使使用 mb_substr 和 utf-8

php - 向复杂的 mysql 连接/ View 添加数据

regex - 简化正则表达式

java - 简单的 Java 正则表达式在两者之间读取

hash - 子字符串 md5 碰撞

php - mysql 代码 有什么方法可以解决这个问题吗?子字段列