duannao1920
2016-04-27 18:22
浏览 53
已采纳

PHP7 / mysql PDO自定义功能

I'm trying to migrate an application written in PHP 5.2, but I'm having trouble creating the correct syntax for custom functions. This works perfectly in the old syntax, but I get a fatal error with this.

Essentially, I'd like to create a function to make it easy to get an email address from a database table that's associated with a unique id. I wrote the code below based on what works in PHP 5.2.

function getemail($id) {
    $email_query = $con->query("SELECT email FROM admin WHERE id='$id'"); 
    $rs = $email_query->fetch(PDO::FETCH_ASSOC);

    return $rs;
}

Then I could use something like below to call this function.

foreach($con->query('SELECT * FROM admin') as $row) {
    echo $row['id'] . ' ' . $row['name'] . ' ' . getemail($row['id']) . '<br>';
}

Any direction to help with this issue is greatly appreciated.

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

  • douxieqiu0651 2016-04-27 19:05
    最佳回答

    Ok, I have a tool for such a transition, which combines the simplicity of old mysql functions with safety of PDO (if used properly) - Simple yet efficient PDO wrapper

    Having set it up, all you need is a code like this:

    function getemail($id) {
        return DB::run("SELECT email FROM admin WHERE id=?", [$id])->fetchColumn(); 
    }
    

    called like this

    echo getemail(1); // admin@example.com
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题