Как выполнить запрос в Zend Framework - PullRequest
1 голос
/ 27 сентября 2011

Спасибо за предыдущие ответы

Я - исполнение "select Name from table_name where id=1";. Я видел несколько руководств по получению данных из базы данных, они упомянули $DB = new Zend_Db_Adapter_Pdo_Mysql($params); DB->setFetchMode(Zend_Db::FETCH_OBJ);, и результат получится через $result = $DB->fetchAssoc($sql); Этот результат $ является форматом массива, я хочу получить только имя вместо того, чтобы получать все данные из базы данных. Я новичок в этой теме. Если я сделал какую-либо ошибку, пожалуйста, исправьте.

Ответы [ 2 ]

2 голосов
/ 27 сентября 2011

попробуйте это:

$result = $DB->fetchOne("SELECT name FROM table_name WHERE id=1");
0 голосов
/ 28 января 2017

Этот код выполнит ваш запрос через доктрину getServiceLocator().С помощью createQueryBuilder() вы можете записать свой запрос непосредственно в zend-framework2, а с помощью setParameter можно легко установить любое желаемое условие.

$entityManager = $this->getServiceLocator()->get('doctrine.entitymanager.orm_default');
                $qb = $entityManager->createQueryBuilder();
                $qb->select(array(
                    'TableName.columnName as columnName '


                ))
                    ->from('ProjectName\Entity\TableName', 'TableName')
                    ->where('TableName.TableId = :Info')
                    ->setParameter('Info', $id);
                $var= $qb->getQuery()->getScalarResult();

Переменная $var содержитзначение, для которого вы хотели сделать сравнение, и содержит только те значения, которые вас интересуют.

...