如何仅从变量中提取字体名称并删除"+"
$font = 'Advent+Pro:100,200,300,regular,500,600,700';
内联式
echo '<style>
.selector {
font-family:'.$font.';
}
</style>
';
输出必须是font-family:'Advent Pro';
很难猜测问题的一般形式,但是:
您可以用strpos
检测:
的位置,用substr
获取子字符串,并用str_replace
用空格替换+
。
$font = 'Advent+Pro:100,200,300,regular,500,600,700';
$font = str_replace ('+', ' ', substr ($font , 0, strpos ($font, ':')));
echo $font;
这只是提取字体系列名称。如果你想在这个姓氏周围引用你的引号,你可以在你的代码中添加它们:
echo '<style>
.selector {
font-family:'''.$font.''';
}
</style>
';
或者将它们添加到我的中(即使我认为第一个解决方案更好):
$font = 'Advent+Pro:100,200,300,regular,500,600,700';
$font = '''' . str_replace ('+', ' ', substr ($font , 0, strpos ($font, ':'))) . '''';
echo $font;
请注意,如果引号已经是字符串分隔符:''''
,则必须对其进行转义。您可以使用双引号作为字符串分隔符来避免这种情况:"'"
。
请参阅:
- http://php.net/manual/fr/function.strpos.php对于
strpos
- http://php.net/manual/fr/function.substr.php对于
substr
- 以及http://php.net/manual/fr/function.str_replace.php用于
str_replace