Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP फंक्शन: Hex को HSL कलर फॉर्मेट में बदलें


हेक्साडेसिमल कलर कोड को HSL (Hue, Saturation, Lightness) फॉर्मेट में बदलने के लिए यह PHP फंक्शन उपयोगी है। यह फंक्शन हेक्स मान को RGB में बदलता है, फिर HSL में कनवर्ट करता है।

पूरा फंक्शन कोड

function hexToHsl($hex) {
    // # प्रीफिक्स हटाएं यदि मौजूद है
    $hex = ltrim($hex, '#');
    
    // 3-अंकीय हेक्स को 6-अंकीय में बदलें (जैसे #abc → #aabbcc)
    if (strlen($hex) === 3) {
        $hex = $hex[0].$hex[0].$hex[1].$hex[1].$hex[2].$hex[2];
    }
    
    // RGB घटक निकालें
    $rgb = [
        hexdec(substr($hex, 0, 2)) / 255,
        hexdec(substr($hex, 2, 2)) / 255,
        hexdec(substr($hex, 4, 2)) / 255
    ];
    
    $max = max($rgb);
    $min = min($rgb);
    $l = ($max + $min) / 2;
    
    if ($max === $min) {
        $h = $s = 0; // एक्रोमैटिक (ग्रेस्केल)
    } else {
        $diff = $max - $min;
        $s = $l > 0.5 ? $diff / (2 - $max - $min) : $diff / ($max + $min);
        
        switch ($max) {
            case $rgb[0]:
                $h = ($rgb[1] - $rgb[2]) / $diff + ($rgb[1] < $rgb[2] ? 6 : 0);
                break;
            case $rgb[1]:
                $h = ($rgb[2] - $rgb[0]) / $diff + 2;
                break;
            case $rgb[2]:
                $h = ($rgb[0] - $rgb[1]) / $diff + 4;
                break;
        }
        $h /= 6;
    }
    
    // H: 0-360°, S: 0-100%, L: 0-100% में वापस करें
    return [
        round($h * 360),
        round($s * 100),
        round($l * 100)
    ];
}

// उपयोग उदाहरण
print_r(hexToHsl('#FF5733')); // आउटपुट: Array ( [0] => 13 [1] => 100 [2] => 60 )

पैरामीटर और रिटर्न मान

  • $hex - हेक्स कलर कोड (जैसे #FF5733 या FF5733)
  • रिटर्न - [H, S, L] array जहां H=0-360, S=0-100, L=0-100

उपयोग के मामले

  • CSS में डायनामिक कलर मैनिपुलेशन
  • कलर पिकर टूल्स बनाना
  • थीम जेनरेटर एप्लिकेशन
  1. - PHP log10() फ़ंक्शन - आधार-10 लघुगणक

    PHP का log10() फ़ंक्शन किसी संख्या का **आधार-10 लघुगणक (base-10 logarithm)** गणना करता है। इसे सामान्य या मानक लघुगणक भी कहते हैं। सिंटैक्स log10(float $arg): float पैरामीटर पैरामीटरविवरण $argवह संख्या जिसका आधार-10 लघुगणक चाहिए लौटाया गया मान $arg का आधार-10 लघुगणक (फ्लोट)। गणितीय संबंध l

  1. - PHP log() फ़ंक्शन - प्राकृतिक लघुगणक और मनमाना आधार

    PHP का log() फ़ंक्शन **प्राकृतिक लघुगणक (natural logarithm, आधार e)** या **निर्दिष्ट आधार** में लघुगणक गणना करता है। डिफ़ॉल्ट आधार यूलर संख्या M_E (≈2.718) है। सिंटैक्स log(float $arg, float $base = M_E): float पैरामीटर्स पैरामीटरविवरण $argवह मान जिसका लघुगणक चाहिए $baseआधार (डिफ़ॉल्ट M_E = प्

  1. - PHP lcg_value() फ़ंक्शन - रैखिक सर्वांगसम जनरेटर (0 से 1)

    PHP का lcg_value() फ़ंक्शन **0 और 1 के बीच स्यूडो-रैंडम फ्लोट** जनरेट करता है। LCG = **रैखिक सर्वांगसम जनरेटर (Linear Congruential Generator)** — सबसे पुराने स्यूडो-रैंडम एल्गोरिदम में से एक। सिंटैक्स lcg_value(): float पैरामीटर्स कोई पैरामीटर नहीं। लौटाया गया मान 0.0 और 1.0 (सम्मिलित) के बीच स्य