javascript - 针对 SocialEngine 4.x/Zend Framework 基于 level_id 的回显文本

标签 javascript php zend-framework socialengine

我必须承认,我对于在 javascript block 中使用 php 还很陌生。作为一个临时修复,直到我可以编写更动态的内容之前,我需要根据用户级别传递文本,如果他们没有登录,我将使用 else 来标识。我在 javascript block 中有一个名为 member_level 的变量,我在双引号内有以下代码,但它不喜欢格式。我只是看不出出了什么问题。如果这个问题措辞错误,我很抱歉,就在我最后一根蜡烛上,看不到我做错了什么

    var chat_role = "<?php if($this->viewer()->level_id == '1'){
                echo Super Admin;
  } else if($this->viewer()->level_id == '3'){
                echo Moderator;
  } else if($this->viewer()->level_id == '4'){
                echo Free;
  } else if($this->viewer()->level_id == '5'){
                echo Public;
  } else if($this->viewer()->level_id == '9'){
                echo Premium;
  } else if($this->viewer()->level_id == '13'){
                echo Corporate;
  } else if($this->viewer()->level_id == '15'){
                echo Lifetime;
  } else if($this->viewer()->level_id == '16'){
                echo Standard Admin;
  } else if($this->viewer()->level_id == '17'){
                echo New Member;
  } else {
                echo Non Logged In;
  }
endif ?>
";

我缺少什么?我真的不是要求别人写代码,只是让我知道我哪里出错了。

最佳答案

请改用此代码:

var chat_role = "<?php echo (isset($this->viewer()->level_id) && $this->viewer()->level_id > 0 ? Engine_Api::_()->getItem('authorization_level', $this->viewer()->level_id)->getTitle(): 'Non Logged In'); ?>";

关于javascript - 针对 SocialEngine 4.x/Zend Framework 基于 level_id 的回显文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50222319/

相关文章:

javascript - 如何从 DOM 错误事件中获取详细消息

javascript - 创建新实体时使用 javascript 刷新 View

JavaScript 模块错误 SyntaxError : Cannot use import statement outside a module

php - MVC : should Model return error message or error code

javascript - 如何在保留选定单元格的同时重新加载 Google Charts 日历中的数据?

php - 将 CURL 语句转换为 php 脚本时遇到问题

events - 调度错误事件未连接到 AbstractController 上的共享事件

php - 如何在zf2 AbstractRestfulController中调用模板文件

php - Zend DB 无法模拟 MS SQL 的限制和偏移量

php - 如何在php中将计算列添加到mysql查询结果中?