僅顯示同一變數中的名字
P粉899950720
P粉899950720 2023-09-05 09:41:43
0
2
605
<p>我在 PHP 中有一個變數:</p> <pre class="brush:php;toolbar:false;"><p><?php echo $this->userInfo->name;?></p></pre> <p>這會輸出他們的名字和姓氏(即 Joe Bloggs)</p> <p>我只想顯示他們的名字和姓氏的第一個字元(即 Joe B)</p> <p>我可以透過在 CSS 中執行以下操作來顯示他們名字的第一個字元並隱藏其餘字元:</p> <pre class="brush:php;toolbar:false;">p { visibility: hidden; } p::first-letter { visibility: visible; }</pre> <p>我想我可以使用 PHP 中的函數,大致如下:</p> <pre class="brush:php;toolbar:false;">function abbreviateName($this->userInfo->name) { if($this->userInfo->name == "") return ""; $tmp = explode(" ", $this->userInfo->name, 2) if(count($tmp)<=1) { return ucwords($tmp[0])."."; } else { $fn = ucwords($tmp[0]); $ln = ucwords(substr($tmp[1],0,1); return $fn.". ".$ln."."; } }</pre> <p>但這不起作用</p>
P粉899950720
P粉899950720

全部回覆(2)
P粉642920522

假設總是有一個空格,您可以從字串的開頭到空格索引後的一個子字串。

substr($this->userInfo->name, 0, strpos($this->userInfo->name, " ") + 2);
P粉680487967

好的,所以我想出了一個很好且簡單的解決方案:

[$first_name, $last_name] = explode(' ', $this->userInfo->name);

echo  $first_name . " " . substr($last_name, 0, 1);

看起來效果很好!

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板