Php Silex和mysql:如何从全选返回结果
条令提供者提供db服务。下面是一个使用示例:Php Silex和mysql:如何从全选返回结果,php,mysql,symfony,doctrine-orm,silex,Php,Mysql,Symfony,Doctrine Orm,Silex,条令提供者提供db服务。下面是一个使用示例: $app->get('/enc/{id}', function ($id) use ($app) { $sql = "SELECT * FROM encuestas WHERE id_enc = ?"; $post = $app['db']->fetchAssoc($sql, array((int) $id)); return "<h1>Encuestas</h1>".
$app->get('/enc/{id}', function ($id) use ($app) {
$sql = "SELECT * FROM encuestas WHERE id_enc = ?";
$post = $app['db']->fetchAssoc($sql, array((int) $id));
return "<h1>Encuestas</h1>".
"<p>{$post['fec_enc']}</p>".
"<p>{$post['opc1']}</p>".
"<p>{$post['img1']}</p>".
"<p>{$post['vot1']}</p>".
"<p>{$post['opc2']}</p>".
"<p>{$post['img2']}</p>".
"<p>{$post['vot2']}</p>".
"<p>{$post['estado']}</p>";
});
问题是什么
在第二段代码中,db返回关联数组的数组。要显示其中的每个项目,必须使用某种循环。实际上,您提供的返回示例很难看。为什么不使用一些模板引擎(比如twig)?无论如何,您必须执行以下操作:
$posts = $app['db']->fetchAll($sql); // posts - NOT post
foreach($posts as $post) {
echo $post['fec_enc']; // or "echo '<p>' . $post['fec_enc'] . '</p>'",
// but it's really ugly
... // rest of properties
}
以下是有关Silex模板的更多信息:问题是什么
在第二段代码中,db返回关联数组的数组。要显示其中的每个项目,必须使用某种循环。实际上,您提供的返回示例很难看。为什么不使用一些模板引擎(比如twig)?无论如何,您必须执行以下操作:
$posts = $app['db']->fetchAll($sql); // posts - NOT post
foreach($posts as $post) {
echo $post['fec_enc']; // or "echo '<p>' . $post['fec_enc'] . '</p>'",
// but it's really ugly
... // rest of properties
}
以下是有关Silex模板的更多信息:你说得对,没有问题。我只是想了一个更别致的方法,不用“回声”和细枝。但就像你说的,它很难看。。。我现在就用树枝模板。你说得对,没问题。我只是想了一个更别致的方法,不用“回声”和细枝。但就像你说的,它很难看。。。我现在将使用细枝模板。
return $app['twig']->render('<template_name>', array('posts' => $posts));
{% for post in posts %}
{{ post.fec_enc }}
...
{% endfor %}