I';“我在php mysql中的pdo中有一个错误”;对非对象调用成员函数setAttribute();

I';“我在php mysql中的pdo中有一个错误”;对非对象调用成员函数setAttribute();,php,phpmyadmin,phpunit,Php,Phpmyadmin,Phpunit,您好,我在PHP MySQL中遇到了一个PDO错误,我不知道该怎么办。它有任何配置吗?使用EasyHP软件 conections.php文件 <?php abstract class Conexao { const USER = "root"; const PASS = ""; const DB = "pare_aqui_db"; const HOST = "localhost"; private static $instancia = null

您好,我在PHP MySQL中遇到了一个PDO错误,我不知道该怎么办。它有任何配置吗?使用EasyHP软件

conections.php文件

<?php
abstract class Conexao
{
    const USER = "root";
    const PASS = "";
    const DB   = "pare_aqui_db";
    const HOST = "localhost";
    private static $instancia = null;

    private static function conectar()
    {
        try
        {
            if(self::$instancia == null):
                $sqlPDO = "mysql:host=".self::HOST.";dbname=".self::DB;
                self::$instancia == new PDO( $sqlPDO , self::USER , self::PASS );
                self::$instancia->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
                self::$instancia->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
            endif;
        }
        catch(PDOException $erro_conecta){echo "erro".$erro_conecta->getMessage();}
        return self::$instancia;
    }

    protected static function getDB()
    {
        return self::conectar();        
    }
}
 ?>

在chrome中测试页面时出错 致命错误:在C:\EasyPHP-12.1\www\pare\u aqui\u web\u service\Dconecta.class.php的第17行对非对象调用成员函数setAttribute()

prepare()也不起作用

self::$instancia == new
未设置变量。因此,
self::$instancia->setAttribute
正在触发错误,因为您正在非对象上执行
(NULL)->setAttribute

这显然是一个输入错误,但只是以防万一:
==
是比较运算符;您真正需要的是
=
,它是赋值运算符;因此,正确的代码是:

self::$instancia = new PDO( $sqlPDO , self::USER , self::PASS );

你可能想建议op应该做些什么才能让这一切顺利进行?@ColinMorelli,给我时间