|
|
|
|
<?
function textFade($str) {
$gradient = '565656 5b5c5c 636464 6d6e6e 747575 7e7f7f 898a8a 939394 9b9c9c a5a6a6 afb0b0 b7b8b8 c1c2c2 cacbcc d5d6d7 e0e1e2 ebecec f5f6f6 ffffff';
$gradient = explode(' ', $gradient);
$gradient = array_reverse($gradient);
$grLen = count($gradient);
$strLen = strlen($str) - 1;
for($i = 0; $i < $grLen; $i++) {
$str = substr($str, 0, $strLen - $grLen + $i) . "<span style=\"color:#{$gradient[$i]}\">{$str[$strLen - $i]}</span>" . substr($str, $str[$strLen - $i]);
}
return $str;
}
|
помогите) никак не могу догнать как это сделать..
Тоесть нужно всеми цветами в $gradient залить последние символы строки. | |
|
|
|
|
|
|
|
для: sl1p
(16.10.2009 в 15:01)
| | а вот сделал так)
<?
function textFade($str) {
$str = strval($str);
$gradient = '565656 5b5c5c 636464 6d6e6e 747575 7e7f7f 898a8a 939394 9b9c9c a5a6a6 afb0b0 b7b8b8 c1c2c2 cacbcc d5d6d7 e0e1e2 ebecec f5f6f6 ffffff';
$gradient = explode(' ', $gradient);
$gradient = array_reverse($gradient);
$grLen = count($gradient);
$strLen = strlen($str);
if($grLen > $strLen) {
$diff = $grLen - $strLen;
for($i = 0; $i < $diff; $i++) {
array_pop($gradient);
}
$grLen = count($gradient);
}
$grText = "";
for($i = $grLen - 1; $i >= 0; $i--) {
$grText .= "<span style=\"color:#{$gradient[$i]}\">{$str[$strLen - 1 - $i]}</span>";
}
$str = substr($str, 0, -$grLen) . $grText;
return $str;
}
|
мб можно както поинтереснее?) | |
|
|
|