php - 检查pdo中mysql存储函数的 bool 返回值

标签 php mysql pdo

我目前正在为我的系统构建数据库,并希望通过对来自 php 的每个请求使用存储函数和存储过程来创建数据库的抽象。 我的问题是我有一个功能可以检查电子邮件是否存在,如果电子邮件存在则返回 true,否则返回 false。现在我如何在 php 中调用 pdo 后检查 bool 返回值。我的 PHP 代码是

$connection = new DB_CONNECTION(); 
$sql = "SELECT email_exists(:email) ";
$placeholder = array(":email" => $userMail );
$statement = $connection->prepare_query( $sql );
$result = $statement->execute($placeholder);
$result = $statement->fetch();
echo $result;

最佳答案

只需给返回值一个别名,它就可以通过数组中的索引访问。

$connection = new DB_CONNECTION(); 
$sql = "SELECT email_exists(:email) as da_count ";
$placeholder = array(":email" => $userMail );
$statement = $connection->prepare_query( $sql );
$result = $statement->execute($placeholder);
$result = $statement->fetch();
echo $result['da_count'];

您可以根据需要对其进行条件化;

if(empty($result['da_count'])) {
     echo 'Email doesnt exist';
} else {
     echo 'Email does exist';
}

关于php - 检查pdo中mysql存储函数的 bool 返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45334408/

相关文章:

php - 如何在使用 Symfony2 保存之前设置或更改实体值

php - 重新加载同一页面时使用 php 设置选择选项

php - mysql 全文 stripslashes 不起作用

php - 将 mysql_num_rows 与多个表一起使用?

php curl 使用 GET 发送变量发送奇怪的结果

php - 如何在没有 find_in_set 的情况下获得 mysql 中逗号分隔字符串中存在的单个数字

mysql - 是否有其他方法可以在不使用Where子句的情况下过滤记录

php - 如何从一系列序列号中获取并在溢出后翻转

php - PDO 绑定(bind)列语句

php - PDO在mysql中的性能