public function CastAsAppropriate($value) { if (is_array($value)) { return $value; } elseif (preg_match('#^[0-9]+/[0-9]+$#', $value)) { return getid3_lib::DecimalizeFraction($value); } elseif (preg_match('#^[0-9]+$#', $value)) { return getid3_lib::CastAsInt($value); } elseif (preg_match('#^[0-9\\.]+$#', $value)) { return (double) $value; } return $value; }