我正在學習Smarty,我想只顯示一個人的名字和姓氏......有沒有可能或者是否更好地使用php? 非常感謝Smarty只有姓和名
回答
您認爲這個解決方案是否可行?從我的測試它是工作:
{assign var="newname" value=" "|explode:$name}
{assign var=names_count value=$newname|@count}
{if $names_count>2}
{assign var=position value=$names_count-1}
{$newname[0]} {$newname[$position]}
{else}
{$name}
{/if}
如果它適合你,那麼它的可行性。如果你有權訪問PHP,我個人會讓PHP做這些操作。然後把它分配給smarty。你知道你的變量是如何設置的以及它的內容是什麼,所以我們只能脫離我們所說的。 –
也感覺你回答自己的問題,也許你可以upvote其他答案意識到它幫助你得到你需要的東西。 :) –
@Diogo Mendonca,努力發現你自己聰明的解決方案,以解決問題。 – blackhawk
您可能需要使用PHP作爲改性劑在網頁上爆炸的字符串數據....
{" "|explode:$name}
或試試這個...
{assign var=nameparts value=" "|explode:$name}
給它shot ...但說實話,在將$ name變量加載到HTML頁面之前,您最好從PHP源代碼中「爆炸」操作。
UPDATE 只要能和你是如何使用$名稱的安全,你可以設置一個條件......正在使用Smarty的HTML代碼中
{assign var=nameparts value=" "|explode:$name}
{if $nameparts[6] == 'Mendonça'}
<p>then my name is {nameparts[0]} {nameparts[6]}.</p>
{else}
<p>we are dealing with a different name </p>
{/if}
..所有。
然後我得到數組的第一個和最後一個元素? –
@DiogoMendonça給代碼一個鏡頭,看看它是否適合你。告訴你不要進入你的系統是有點困難的。 – blackhawk
是的,有條件的是看到我們看不到代碼是如何設置的。 –
你可以做到這一點,如果你真的想在Smarty做到這一點。
{assign var="newname" value=" "|explode:$name}
{$newname[0]} {$newname[6]}
更新
OR ..我會做的是做在PHP。然後將其分配給smarty。您的模板中使用{$fullname}
。
這看起來非常好! – blackhawk
謝謝。 @blachawk。我同意你的意見,但我會在PHP中進行分配。 –
- 1. 用名字和姓氏查找姓名
- 2. 名和姓
- 3. :姓名,姓氏:姓名
- 4. 合併名和姓
- 5. 名字和姓氏中的Split姓氏
- 6. 選擇 - 只有從姓
- 7. Rails:通過姓名和姓氏進行有效搜索
- 8. Bluesnap卡持有人名字和姓氏
- 9. 姓名驗證了名,中間名和姓
- 10. solr按名和姓搜索
- 11. 提取名字和姓氏
- 12. 按姓和名排序
- 13. MVC User.Identity.Name,姓氏和名字
- 14. 搜索名字和姓氏
- 15. wp_list_comments給的姓和名
- 16. RegexValidator名稱和姓氏
- 17. Python CSV將全名字符串分割成姓名和姓氏
- 18. 單名文本框中的名字和姓氏的姓氏
- 19. SQL Server - 在名字和姓氏字段中搜索姓名
- 20. 將姓名字段拆分成姓氏和名字
- 21. 解析姓名爲第一名字和姓氏 - LINQ到實體
- 22. 獲取所有者姓名
- 23. Swift'沒有會員姓名'
- 24. 姓名中帶空格的姓名沒有得到下載
- 25. JSON編碼姓名+姓氏=全名
- 26. 搜索姓名+「」 +姓名使用LINQ
- 27. 正則表達式到姓名。姓名
- 28. 我如何才能查詢,只會找到名字和姓氏
- 29. Facebook api只返回用戶的姓名和編號的javascript
- 30. 獲取OpenId的名,姓和名字?
您可以操縱SMARTY數組和字符串數據。所以要回答你的問題 - 一般來說,你可以在通過DOM顯示時修改某個名字(字符串)。但是你必須發佈你處理的代碼以及如何將它加載到你的頁面上(即你正在將一個數據數據加載到頁面上的一個循環中)。 – blackhawk
Smarty基於PHP構建。 Smarty只知道你給它的屬性和價值,所以是的,這是可能的,但是我們需要代碼示例,以及如果你需要幫助,你到底有什麼代碼。 – dKen
IMO Smarty不值得使用。 PHP中的僞編程語言,性能嚴重下降。 – vikingmaster