Я пытаюсь сделать десятичную -> шестнадцатеричную функцию цвета для php, но, как, например,. он выводит ff19a, хотя я хочу, чтобы он делал ff190a. Я предполагаю, что утверждение if в моей функции foreach не проходит, и, честно говоря, я не знаю почему. Я также попыталсяПочему моя функция foreach не работает?
$value = "0$value";
, который не работает, либо для линии в $ шестнадцатеричном [$ значение]
<?php
function decimalColors($red, $green, $blue){
$hexadecimal = [dechex($red), dechex($green), dechex($blue)];
foreach ($hexadecimal as $value) {
if (strlen($value) == 1){
$hexadecimal[$value] = "0".$value;
}
echo $value;
}
}
echo decimalColors(255, 25, 10);
Я хотел бы, чтобы получить решение по этому вопросу, и, если это возможно объяснение почему это не работает.
Спасибо!
Я думаю, что все ответы здесь действительны, и вы можете много узнать о них. Всегда есть много способов сделать то же самое. Главное - учиться *. –
@ miken32 wait Я больше всего смущен значением $ key => $, потому что это не многомерный массив, где есть ключ и значение. Я просто храню число в $ hexadecimal, так что нет верного ключа/значения? – mathn00b
@ mathn00b Когда вы создаете такой массив, устанавливаются неявные числовые клавиши. Попробуйте приклеить 'print_r ($ hexadecimal);' перед возвратом функции, и вы увидите их как 0-2. Я сделал одну ошибку в своем ответе на тот момент, который я исправил. Многомерный массив представляет собой массив массивов. – miken32