tfzh 2016-08-23 01:41 采纳率: 25%
浏览 916
已采纳

pdo函数无法连接数据库

这是我的测试代码部分,把pdo连接的语句 写成函数后就连接不了数据库了。
<?php
header('content-type:text/html;charset=utf8');
//链接数据库

//1.非函数,成功连接
try{

$dsn='mysql:host=localhost;dbname=cyotel';

$username='root';
$password='root';
$pdo=new PDO($dsn,$username,$password);
//打印连接结果

}catch(PDOException $e){
echo $e->getMessage();

}
var_dump($pdo);

//2.函数,连接失败
function connect(){
try{

$dsn='mysql:host=localhost;dbname=cyotel';

$username='root';
$password='root';
$pdo2=new PDO($dsn,$username,$password);
//打印连接结果

}catch(PDOException $e){
echo $e->getMessage();
}
}
connect();
var_dump($pdo2);
?>

浏览器中的测试打印结果
图片说明
php新手,还不太会面向对象~目前只懂点面向过程,跪求大神解答~

  • 写回答

1条回答 默认 最新

  • 泰 戈 尔 博客专家认证 2016-08-23 03:05
    关注

    你的$pdo2是定义在function里面的,也就是说其将作为局部变量。然而你在外边直接调用了connect函数。

    所以在函数的外边是访问不到$pdo2的,所以才会报出 Undefined variable的错误。这下明白了吧。

    希望对你有所帮助。 :-)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 matlab有关常微分方程的问题求解决
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考