我有一个填充了000000
&等颜色代码的文本区域。 ffffff
每种颜色都在一条单独的行上,所以它看起来像:
000000
111111
222222
现在我将这些转换为实际的内联背景颜色:
$bgclass = $params->get('bgclass');
$bgcolors = $params->get('bgcolors');
$bglines = explode("\n", $bgcolors);
if ( !empty($bglines) ) {
echo "<style>";
foreach ( $bglines as $bgline ) {
echo "." . $bgclass . "-" . $bgline . "{background:#" . $bgline . ";}" . "\r\n";
}
echo "</style>";
}
现在输出如下:
<style>
.bg-000000
{background:#000000
;}
.bg-111111
{background:#111111
;}
.bg-222222
{background:#222222
;}
</style>
如何让输出像这样:
<style>
.bg-000000{background:#000000;}
.bg-111111{background:#111111;}
.bg-222222{background:#222222;}
</style>
答案 0 :(得分:3)
explode()
只需\r\n
代替:
$bglines = explode("\r\n", $bgcolors);
另一种选择是trim()
:
$bglines = explode("\n", $bgcolors);
$bglines = array_map('trim', $bglines);
如果这是一个文件(正如我原先想的那样),那么我会使用file()
将文件读入数组并删除行结尾:
$bglines = file('/path/to/file.txt', FILE_IGNORE_NEW_LINES);
答案 1 :(得分:0)
我不确定您发布的方法有什么问题,但这可能对您有帮助。
12341234123412341234123412341234