5

我有以下字符串

$str = ".block_1 {width:100px;}.block_2 {width:200px;}.block_3 {width:300px;}";

我想根据这个公式 (pixelvalue / 960) *100 用百分比值替换 px 值

我知道使用这样的正则表达式 ([0-9]+px) 我可以找到所有值 + px 但随后我需要再次运行它并将其替换为 (pixelvalue / 960) *100.'%'

希望你明白我的意思,并感谢你的帮助。

好的,这是解决方案:

$str = preg_replace_callback(
        '([0-9]+px)',
        function ($matches) {            
            return ((str_replace('px','',$matches[0])/960)*100).'%';
        },
        $str
    );
    echo $str;
4

1 回答 1

11

看看preg_replace_callback

于 2013-06-20T15:26:16.057 回答