如果中间名有两个单词,如何将中间名显示为中间名首字母

how to display middle name as middle initial if middle name have two words

所以我创建了一个表单,其中包含中间名字段并将中间名显示为首字母。

preg_split("/[\s,_-]+/",$data["s_mname"])

如果中间名只有一个单词,此代码有效。像 Snow 一样,它会显示为 S,但我的问题是如果中间名是 2 个单词,如 De LeonDelos Santos 首字母将显示的是 DL,DS.. 但它应该显示为 D...知道如何做到这一点..

SUBSTR($data["s_mname"],strrchr($data["s_mname"], ' '), 1)

我试过这段代码但没有任何效果我只是从其他网站得到的..

像这样使用explode():-

preg_split("/[\s,_-]+/",explode(' ',$data["s_mname"])[0])

输出:- https://eval.in/828658

preg_match_all('/\s\w/', $data["s_mname"], $matches, PREG_SET_ORDER);
/*echo end($matches)[0];*/
echo $matches[0][0];

试试这个代码,你可以根据需要使用它