Есть массив цветов PHP: $color = array($red = imagecolorallocate($im, 255, 0, 0), $green = imagecolorallocate($im, 0, 255, 0), $blue = imagecolorallocate($im, 0, 0, 255)); //нужно рандормно закрашивать прямоугольники любым цветом из массива // делаю так for ($i = 0; $i < 3; $i++) { imagefilledrectangle($im, $x, $y, $x + 10, $y + 20,array_rand($color, 1)); }; // такая же фигня. Выскакивает 256 цветов, а надо ТОЛЬКО ТРИ imagefilledrectangle($im, $x, $y, $x + 10, $y + 20, rand($color[0], $color[2]); Решение вроде примитивное , но в упор не вижу.
PHP: <?php $ARRAY_COLORS = []; $ARRAY_COLORS[] = ImageColorAllocate ( $im, 255, 0, 0 ); $ARRAY_COLORS[] = ImageColorAllocate ( $im, 0, 255, 0 ); $ARRAY_COLORS[] = ImageColorAllocate ( $im, 0, 0, 255 ); ImageFilledRectangle ( $im, 4, 4, 50, 25, $ARRAY_COLORS[array_rand ( $ARRAY_COLORS, 1 )] );