是否可以打印JText內部變量是否有可能回顯變量中JText :: _如果又如何
即: - 我需要打印$電子郵件來測試它是否是零或具有價值在它...
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS'));
是否可以打印JText內部變量是否有可能回顯變量中JText :: _如果又如何
即: - 我需要打印$電子郵件來測試它是否是零或具有價值在它...
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS'));
的JText類有一個靜態方法「_」,其將傳遞到它到另一個字符串中的字符串參數,使用語言文件和設置適當的上下文。如果你想看到的是正在傳遞什麼setMessage你可以只嘗試:
echo 'DEBUG setMessage argument: "'.JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS').'"';
如果你發現這表明_正在恢復什麼的話,那很可能是一種跡象表明,沒有對「COM_USERS_REGISTRATION_ACTIVATE_SUCCESS條目'正在使用的語言文件中。
編輯:
如果需要追加$email
則只是這樣做:
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS').$email);
COM_USERS_REGISTRATION_ACTIVATE_SUCCESS
正在由消息的語言定義替換。如果你打破了這一點,Joomla不會承認它。
您可以將變量追加到消息,如果你想:
$this->setMessage(JText::_('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS') . $email);
甚至忽略JText如果你需要
$this->setMessage('some message, email: ' . $email);
如果你想在字符串中使用變量或幾個變量,這裏有一個例子:
$this->setMessage(JText::sprintf('COM_USERS_REGISTRATION_ACTIVATE_SUCCESS', $name, $email);
而在語言文件中:
COM_USERS_REGISTRATION_ACTIVATE_SUCCESS="Hello %s, your email is: %s"
所以最終輸出的外觀($ name和$電子郵件將通過給定的變量值替換):
Hello $name, your email is: $email
沒有我需要追加$電子郵件還用它,讓出放必須是JText +中存儲的電子郵件的價值$ email – 2012-03-08 10:06:10
thnks糾正它是 – 2012-03-08 10:15:22