为PHP数组中的各个变量分配颜色

时间:2018-08-29 17:44:04

标签: javascript php jquery woocommerce

我不确定是否可行,但是这个概念类似于使用strtoupper。我正在尝试为数组中的每个项目设置一个颜色#值。有没有可以在此处应用的有效PHP颜色功能?

例如[0] =#ed7b7 [1] =#c13f0

稍后将在这些代码中使用jQuery调用这些值,以在Javascript SweetAlert中显示这些值,而我正在尝试使每个字符串在警报中显示为不同的颜色。

我将字符串转换为大写的代码段:

    // Return the product category count that belongs to the added item
if( has_term( $categories[0], 'product_cat', $product_id ) )
    echo json_encode(array(strtoupper($categories[0]) => $counts[0])); // Returned value to jQuery
if( has_term( $categories[1], 'product_cat', $product_id ) )
    echo json_encode(array(strtoupper($categories[1]) => $counts[1])); // Returned value to jQuery
}

这是Javascript警报,然后我在其中尝试使用彩色变量调用修改后的响应:

    success: function (response) {
                    $.each( JSON.parse(response), function( category, count ) {
                        if( count == 4 ){                         
swal({
  type: 'success',
  title: "You've Added The 4 Minimum "+category+" Items!",
  allowOutsideClick: false,
  showCancelButton: false,
  showConfirmButton: false,
timer: 3000,
})  

1 个答案:

答案 0 :(得分:0)

您可以使用以下函数生成任何随机颜色,并将其分配为颜色属性的数组。

function random_color_part() {
        return str_pad( dechex( mt_rand( 0, 255 ) ), 2, '0', STR_PAD_LEFT);
    }

    function random_color() {
        return random_color_part() . random_color_part() . random_color_part();
    }

if( has_term( $categories[0], 'product_cat', $product_id ) )
    echo json_encode(array(strtoupper($categories[0]) => $counts[0],'color' => random_color())); // Returned value to jQuery
if( has_term( $categories[1], 'product_cat', $product_id ) )
    echo json_encode(array(strtoupper($categories[1]) => $counts[1],'color' => random_color())); // Returned value to jQuery
}

Generating a random hex color code with PHP