首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从数组中选择两种颜色

问从数组中选择两种颜色
EN

Stack Overflow用户
提问于 2014-01-19 01:57:46
回答 4查看 78关注 0票数 0

我一直在为自己建立一个有五个预定义颜色的特定调色板的网站,背景色就是其中之一。CSS文件是使用PHP呈现的,因此我能够完成以下工作(带有占位符颜色):

代码语言:javascript
复制
<?php
  $bg_colors = array('red', 'blue', 'green', 'yellow', 'orange');
  $bg_rand = $bg_colors[array_rand($bg_colors)];
?>
background-color:<?=$bg_rand?>;

现在的问题是,是否有一种方法来调用array_rand遗漏的四种颜色?假设背景颜色原来是绿色,我怎么能具体地称之为#1,#2,#4和#5?

原因是,这五种颜色将在整个网站中使用,与身体背景相同的任意颜色的div在这种情况下是不可接受的。我怎样才能做到这一点?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-01-19 02:02:21

从理论上讲,虽然这不是最干净的选项,但从长远来看,您可以只对数组进行洗牌,然后使用第一个结果,让下面的4按您的意愿处理。

例如:

代码语言:javascript
复制
<?php
$bg_colors = array('red', 'blue', 'green', 'yellow', 'orange');
shuffle($bg_colors);
?>
background-color:<? echo $bg_colors[0]; ?>

这将留下其余4种颜色,随机,数组值(1,2,3,4)。

$bg_colors1,$bg_colors2等。

票数 1
EN

Stack Overflow用户

发布于 2014-01-19 02:03:55

你可以用拼接()得到一个随机的。则数组将只具有剩余的颜色。

代码语言:javascript
复制
array_splice($bg_colors, $random_number, 1);

编辑:打字

票数 0
EN

Stack Overflow用户

发布于 2014-01-19 02:05:08

您只需清理数组并逐个获得如下值:

代码语言:javascript
复制
<?php
$bg_colors = array('red', 'blue', 'green', 'yellow', 'orange');
shuffle($bg_colors);
$bg_rand = array_shift($bg_colors);

现在,您将保留4种颜色的数组。

此外,您也可以只制作5个颜色特定的css文件,并将其中一个随机添加到页面中。但是,正如所述,只有5种不同的颜色模式。既然你可以有120个什么的

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21212331

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档