Php 句子中任何单词的第一个字符

Php 句子中任何单词的第一个字符,php,smarty,Php,Smarty,我想提取句子中任何单词的第一个字符,如: Full time become FT Part time become PT Contractor become C Temp become T 这在smarty PHP中可能吗?如何实现?我有{$listing.EmployementType}。这里有一种功能性的方法: function firstLetter($word) { return uc($word[0]); } $result = implode('', array_map(

我想提取句子中任何单词的第一个字符,如:

Full time become FT
Part time become PT
Contractor become C
Temp become T

这在smarty PHP中可能吗?如何实现?我有{$listing.EmployementType}。

这里有一种功能性的方法:

function firstLetter($word) {
    return uc($word[0]);
}

$result = implode('', array_map('firstLetter', explode(' ', $sentence)));

编辑:或者

$result = '';
$words = explode(' ', $sentence);
foreach ($words as $word) {
    $result .= uc($word[0]);
}
实际上更短,可能更易读,但没那么有趣哈哈

编辑2:对不起,我没有意识到smarty是问题的一个要求。我将把这个问题留在这里,以防其他寻找纯php解决方案的人偶然发现这个问题

{assign var=firstWord value=" "|explode:"$listing.EmployementType"}
然后通过$firstWord[0]访问第一个字。。 你可能想进一步调查一下。。

创建一个适合您需求的smarty插件。在本例中,是一个修改器插件。
如果你知道一些基本的php,这很简单:

@Maion-ah对不起,我不熟悉smarty,没有意识到这是问题的一个要求。不用担心,不用担心,这些代码可以在php上运行,有时只需在php中编写所有代码并在smarty中显示即可。我需要每个单词的第一个字符。根据你的代码,{assign var=firstletter value=”“| explode:“$listing.employeenttype | substr:0:1”}{$firstletter[0]}{$firstletter[1]}???我有点困惑,你想要第一个字母还是第一个单词?第一个字母。全职成为FT.@Alouty我从来没有单独使用smarty这样做过,这对smarty来说可能有点复杂,如果我们用php进行编码会更好,如果您需要帮助,请给我们一个提示:{assign var=firstWord value=“”| explode:“$listing.employeementtype”}-{$firstWord[0]| substr:0:1}{$firstWord[1]| substr 0:1}??您是如何在php中分配$listing.EmploymentType的?