我一直在尝试编写每次通过元素循环时输出不同颜色的代码,以创建色轮类型的东西。我仍然是PHP的新手以及它如何与html交互,但这是我到目前为止的代码。这会输出一堆不同的span元素,但它们都是相同的颜色,每次循环时它们应该是不同的。顺便说一句,迭代器在包含的单独文件中设置为50。
<h1>Using Iterator: <?php echo $iterator; ?></h1>
<?php
$red = 0;
$green = 0;
$blue = 0;
// LOOPS HERE
for($red = 0; $red < 255; $red+$iterator){
for($green = 0; $green < 255; $green+$iterator){
for($blue = 0; $blue < 255; $blue+$iterator){
echo "<span style='background-color: rgb(0, 50, 150)'
title='#003296'></span>";
$hexred = sprintf('%02x', $red);
}
}
}
?>
答案 0 :(得分:0)
替换
reload
有了这个,
echo "<span style='background-color: rgb(0, 50, 150)'
title='#003296'></span>";
答案 1 :(得分:0)
您的代码通常有效。你只需要做两件事:
+=
代替+
像这样:
$iterator = 50;
for($red = 0; $red < 255; $red+=$iterator){
for($green = 0; $green < 255; $green+=$iterator){
for($blue = 0; $blue < 255; $blue+=$iterator){
echo "<span style='background-color: rgb($red, $green, $blue)'
title='#003296'> </span>";
}
}
}
?>
答案 2 :(得分:-1)
试试这个,同性恋。
<?php
$colours = colourArray();
// Be careful playing with $step! 0 will likely crash your program.
// This function returns an array of all possible RGB values in increments
// dictated by $step
// I took this function from: https://stackoverflow.com/questions/21268983/array-of-all-rgb-permutations-in-php?answertab=active#tab-top
function colourArray($step = 25) {
$colours = array();
foreach(range(0,255,$step) as $r) {
foreach(range(0,255,$step) as $g) {
foreach(range(0,255,50) as $b) {
$colours[] = array($r,$g,$b);
}
}
}
return $colours;
}
foreach ($colours as $spectrum) {
$r = $spectrum[0];
$g = $spectrum[1];
$b = $spectrum[2];
echo "<span style=\"background-color: rgb($r, $g, $b)\">$r, $g, $b</span>";
}