tohokuaikiのチラシの裏

技術的ネタとか。

#FFFFFF を 255,255,255に変えるPHP関数

ただの自分用備忘録

<?php
function rgb16c($rgb)
{
	$c16 = "";
	
	if (strlen($rgb)!=6){
		return "0,0,0";
	}
	
	$tmp = 0;
	for ($i=0; $i < strlen($rgb); $i++){
		$value = intval(base_convert($rgb{$i}, 16, 10)) + 1;
		if ($i%2){
			$c16 .= strval($tmp * $value -1).","; 
		} else {
			$tmp = $value;
		}
	}
	
	return trim($c16, ",");
}


ごめん、間違えてた

<?php
	/// カラーを#FFFFFF → 255,255,255というように変換する
	function rgb16c($rgb)
	{
		$rgb = trim($rgb, "#");
		
		$c16 = "";

		if (strlen($rgb)!=6){
			return "0,0,0";
		}

		$tmp = 0;
		for ($i=0; $i < strlen($rgb); $i+=2){
			$rgb16 = substr($rgb, $i, 2);
			$value = intval(base_convert($rgb16, 16, 10)) + 1;
			$c16 .= $value.",";
		}
		
		return trim($c16, ",");

	}