Я использую библиотеку HybridAuth для отображения списка контактов пользователя из Gmail. Член объект DISPLAYNAME, и я использую его так:Explode object variable в Smarty
{foreach from=$contacts key=k item=contact}
<span class="name">{$contact->displayName}</span>
{/foreach}
Я хотел бы использовать его как это:
{foreach from=$contacts key=k item=contact}
<span class="first-name">{$contact-firstName}</span>
<span class="last-name">{$contact->lastName}</span>
{/foreach}
Я полагаю, я мог бы сделать это с помощью регулярных выражений без особых проблем, но Я знаю, что регулярное выражение не является предпочтительным решением. Я пытался понять, что-то вроде ..
{$contact->strtok(displayName," ")}
который возвращает
Fatal error : Call to undefined method Hybrid_User_Contact::strtok()
Я сейчас пытаюсь сделать что-то вроде этого ..
{assign var=$contact value=" "|explode:displayName}
но я убежищем Пока не понял, как это сделать.
я получаю неопределенная ошибка смещения, потому что некоторые из них не имеют имя и фамилию. Я попробовал {if (array_key_exists ($ names [1], $ contact-> displayName))}, но это неверно. Знаете ли вы, как я мог проверить это, чтобы избежать ошибки в случаях, когда нет имени и фамилии? – davidcondrey
@dcc Пожалуйста, посмотрите отредактированный ответ –