2010-02-05 3 views
0

функция rgborhex является returing неопределенной переменной:функция постоянно возвращается undefinded переменной вместо массива из PHP взрываются

function rgborhex($unformatedColor){ 
if(strpos($unformatedColor, "-") == false) { //did not find a - in the color string; is not in rgb form; convert 
    $rgbColor = hextorgb($unformatedColor); 
    $rgbColor = explode("-", $rgbColor); 
    return $rgbColor; 
} 
else { // found a - in the color string; is in rgb form; return 
    $rgbColor = $unformatedColor; 
    $rgbColor = explode("-", $rgbColor); 
    return $rbgColor; 
} 
} 

function hextorgb($hex) { 
if(strlen($hex) == 3) { 
    $hrcolor = hexdec(substr($hex, 0, 1));  //r 
    $hrcolor .= "-" . hexdec(substr($hex, 1, 1)); //g 
    $hrcolor .= "-" . hexdec(substr($hex, 2, 1)); //b 
} 
else if(strlen($hex) == 6) { 
    $hrcolor = hexdec(substr($hex, 0, 2));  //r 
    $hrcolor .= "-" . hexdec(substr($hex, 2, 2)); //g 
    $hrcolor .= "-" . hexdec(substr($hex, 4, 2)); //b 
} 
return $hrcolor; 

}

+2

С помощью ваших strpos вы должны проверить === false, not == false. – Psytronic

ответ

1
-return $rbgColor; 
+return $rgbColor; 

Просто опечатка в вашем втором return заявление :)


Альтернатива - мелкие изменения, более легкие для чтения ИМО:

function rgborhex($unformatedColor) { 
    if (strpos($unformatedColor, '-') === false) { //did not find a - in the color string; is not in rgb form; convert 
     $unformatedColor = hextorgb($unformatedColor); 
    } 

    return explode('-', $unformatedColor); 
} 
+0

Ничего себе. Поздняя ночная кодировка. вот что там произошло! благодаря! –

+0

Добро пожаловать :) – jensgram

0

Пожалуйста, разместите error_reporting на E_ALL | E_STRICT. Это заставляет PHP возвращать гораздо больше ошибок, чем можно было бы ожидать.

Смежные вопросы