我有一个代码将随机字体应用于从.txt文件的最后20行获取的文本div。我想对每一行应用不同的随机字体...任何指针?
<?php
$fonts = array("Helvetica", "Arial", "Courier", "Georgia", "Serif", "Comic Sans", "Tahoma");
shuffle($fonts);
$randomFont = array_shift($fonts);
$output = "";
$lines = array_slice(file("users.txt"), -20, 20);
foreach ( $lines as $line )
{
$output .= '<div style="font-family:' . $randomFont . '; margin-left: ' . rand(0, 60) . '%; opacity: 0.8;">' . $line . '</div>';
}
echo $output;
?>
答案 0 :(得分:1)
现场演示here。
代码:
$fonts = array("Helvetica", "Arial", "Courier", "Georgia", "Serif", "Comic Sans", "Tahoma");
shuffle($fonts);
$output = "";
$lines = array();
for($i = 0; $i < 40; $i++) $lines[] = "line $i";
$i = 0;
foreach ( $lines as $line ) {
if($i == count($fonts)) {
shuffle($fonts);
$i = 0;
}
$output .= '<div style="font-family:' . $fonts[$i] . '; margin-left: ' . rand(0, 60) . '%; opacity: 0.8;">' . $line . "</div>\n";
$i++;
}
echo $output;
答案 1 :(得分:0)
随机化您的字体:
$Random = $fonts[rand(0, count($fonts) - 1)];
答案 2 :(得分:0)
一直在思考它,并有一个更简单的解决方案。
<?php
$fonts = array ('font 1', 'font 2', 'font 3'); // 20 entries for the full set
shuffle ($fonts);
while ($font = array_pop ($fonts))
{
$output .= '<div style="font-family:' . $font . ';"></div>';
}
?>
这显然不是您在上面发布的问题的精确解决方案,而且并非如此。它旨在提供一种获取保证唯一的随机值的方法示例。您应该能够将此处表达的想法合并到您自己的代码中,而不会有太多困难。