我需要匹配所有这些开始标记:
<p>
<a href="foo">
Run Code Online (Sandbox Code Playgroud)
但不是这些:
<br />
<hr class="foo" />
Run Code Online (Sandbox Code Playgroud)
我想出了这个,并希望确保我做对了.我只抓住了a-z.
<([a-z]+) *[^/]*?>
Run Code Online (Sandbox Code Playgroud)
我相信它说:
/,然后我有这个权利吗?更重要的是,你怎么看?
有没有办法在预准备语句上调用PDOStatement :: execute()时获取原始SQL字符串?出于调试目的,这将非常有用.
是否可以扩展PHP PDO语句类以向其添加自定义方法?这与扩展基础PDO类不同.如果是这样,那么如何才能实现它,因为只有在通过PDO类运行查询时才返回语句类?
可能重复:
从PDO预处理语句中检索(或模拟)完整查询
我无法弄清楚为什么我的查询返回0行..它实现了一些非常动态的搜索功能,以及很多if/loop语句等等.为了调试它,我想确切地看到正在发送什么字符串到服务器.有没有办法通过PHP做到这一点?
有没有办法让服务器询问"最后一个查询是什么",或者告诉PDO"告诉我你发送了什么"?
我看到一个响应使用str_replace手动输入值代替:fieldValue,但它可能是一个语法问题(或者它可能是一个不正确的循环等),这种方法没有帮助.
使用bindValue(":fieldValue", $value);if如果有所作为.
编辑
事实证明if ($var="true") { ...这应该是一个简单的事情if ($var=="true") { ....我认为PHP在这个意义上与Java不一样吗?无论哪种方式,问题仍然存在(因为我经常遇到这个问题).我不得不使用一系列echo "You are Here";来查找此错误,因为它在技术上有效但不正确.如果我有最后的SQL语句,我可以看到"哦,我的代码添加了where column = true,必须经历错误的IF ...".
如果我有一个准备好的语句SELECT * FROM users WHERE userid = :userid,我可以通过读取此SQL语句PDOStatement::$queryString.对于日志记录,我想要拥有执行的字符串,例如... WHERE userid = 42.我怎么得到这个字符串?