提取字体名称并用引号显示


extract font name and display with quotation mark

如何仅从变量中提取字体名称并删除"+"

$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