php - SELECT COUNT(*) FROM 'accounts' WHERE role = 'engineer' 使用 symfony1.4 获取总行数

标签 php mysql symfony-1.4

您好,我在从表帐户获取所有数据时遇到问题,我想使用 WHERE 从表帐户获取数据总数。假设在账户表中,角色=工程师。从字段角色 = 工程师将得到的所有总行数。我在此使用 symfony 框架

下面是我的 Controller

<?php
class spFindRoleDetailAction extends sfAction{

  function preExecute(){
  }

  public function execute($request){

        $this->setLayout('spLayout');
    $this->setTemplate('sp/roleDetail');

        $role = $request->getParameter('ro');
        $this->roleDetail = AccountTable::getInstance()->getRoleDetail($role);
        $this->roleCount = AccountTable::getInstance()->getCountDetail($role);

    }
}

型号查询

 public function getCountDetail($role){
                return $this->createQuery('a')
                ->where('a.role = ?', $role)
                ->execute();
     }

我的模块模板在此处查看代码

<div id="search-by-role-detail" data-role="page">
    <div role="main">
    <ul data-role="listview">  
      <li>
        <a href="<?php echo url_for('@find-sp-role-page'); ?>" class="ui-btn ui-btn-icon-left ui-icon-nav-l center"> 
          <h1>エンジニア<span class="header-result-count">(<?php echo $roleCount->count(); ?>)</span></h1>
        </a>
      </li>
            <?php if(isset($roleDetail)): ?>
            <?php foreach($roleDetail as $role): ?>
      <li>
        <a href="<?php echo $role->getSlug(); ?>"class="ui-btn ui-btn-icon-right ui-icon-list-r" data-transition="slide">
                    <?php if($role->getLogo() == NULL): ?>
                        <div class="middle v-image">
                            <img class="image-user" src="/images/sp/sample.png">
                        </div>
                    <?php else: ?>
                        <div class="middle v-image">
                            <img class="image-user" alt="<?php echo $role->getName(); ?>" src="http://img.creww.me/uploads/account/logos/<?php echo $role->getLogo(); ?>">
                        </div>
                    <?php endif; ?>
          <div class="middle v-list">
            <h3><?php echo $role->getName(); ?></h3>
            <p><?php echo $role->getOverview(); ?></p>
          </div>     
        </a>
      </li>
            <?php endforeach; ?>
            <?php endif; ?>
    </ul>
    </div>
    </div>

H1标签中有一个计数,我如何才能获得其中的总行数。我在那里使用<?php echo $roleCount->count(); ?>这是错误的

谁能帮我解决这个问题? 非常感谢任何帮助 谢谢!

最佳答案

如果 count() 不起作用,那么你可以尝试这样的方法。

public function getCountDetail($role)
{
   $q = Doctrine_Query::create()
        ->from('[some table] a')
        ->where('a.role = ?', $role)
        ->select('COUNT(a.id)')
        ->execute(array(),Doctrine_Core::HYDRATE_SINGLE_SCALAR)
   return $q;
}

在这种情况下,该函数将返回一个数字,表示找到的记录数。

关于php - SELECT COUNT(*) FROM 'accounts' WHERE role = 'engineer' 使用 symfony1.4 获取总行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22841451/

相关文章:

php - Yii2 始终使用 $_COOKIE、$_SESSION 和 $_SERVER 记录应用程序类别(类别过滤器无法正常工作)

java - 使用 Hibernate Annotation 更新现有实体类的列名称

css - 在 symfony 中为图像添加修订号以避免浏览器缓存

php - 如何在 Symfony 1.4 中获取工作环境

view - 如何添加助手来查看助手?

javascript - 按下特定列表的按钮后使用ajax更新特定列表<li>

PHP xor 返回错误值

php - 用于检查网站 url 的正则表达式

php - 使用 $.ajax 请求从 PHP 到 MYSQL 数据库的 jQuery 表单处理

php - 如何引用刚刚通过自动增量插入的外键到两个插入查询