0

我想实现一个 PHP 函数来模拟CSS 如何处理 RGB。在 CSS 中,可以使用百分比指定 RGB 颜色rgb(50%, 50%, 50%)。但是,如果我有这个 PHP 函数:

function rgb($r, $g, $b) {
    ...
}

并使用百分比调用它会导致解析错误,因为 PHP 使用百分号 ( %) 进行模块化除法。

无论如何要传递百分比作为参数还是我必须以另一种方式传递值(字符串、小数等)?

编辑

在 CSS 中,RGB 值可以通过两种方式指定。通过从 0 到 255 的整数或从 0% 到 100% 的百分比。因此,百分比不能是整数,因为rgb(50, 50, 50)它可能表示红色、绿色和蓝色值 50(255 中)或 50%。

4

2 回答 2

1

但是我认为没有理由传递百分号,但如果你不想执行数学运算,你可以像字符串一样传递它

rgb('50%', '50%', '50%')

或像这样使用

function rgb($r, $g, $b) {
   echo $r.'%';
}
于 2013-07-07T07:05:23.110 回答
1

字符串“50%”是一个非常以人为本的表达方式。你必须把它当作一个字符串来处理,而不是一个数学术语。所以:

function rgb("50%", "50%", "50%") {
    ...
}

或者,以更灵活的方式:

$r = "50%";
$g = "50%";
$b = "50%";
function rgb( $r, $g, $b ) {
    ...
}
于 2013-07-07T07:06:24.830 回答