2011-01-25 34 views
10

Ya se ha buscado en muchos sitios sin resultados. PHP sigue diciendo:Llamada a la función no definida sqlite_open

Call to undefined function sqlite_open() 

Si se me carga manualmente sqlite (ya está instalado con yum install php-pdo) consigo

PHP Warning: Module 'PDO' already loaded in Unknown on line 0 

PHP Warning: Module 'pdo_sqlite' already loaded in Unknown on line 0 

PHP Warning: Module 'sqlite3' already loaded in Unknown on line 0 

PHP Fatal error: Call to undefined function sqlite_open() in /home/kpark/dbconnect.php on line 9 
+1

¿Ha reiniciado su servidor desde la instalación de 'php-pdo'? –

Respuesta

19

sqlite_open era la función de la extensión sqlite2. Lo que ha instalado es probablemente el módulo sqlite3, que en su lugar requiere sqlite3::open().

Pero no debe usar la interfaz nativa de ninguna manera. Use PDO para abrir bases de datos sqlite. http://www.php.net/manual/en/ref.pdo-sqlite.php

+7

Iba a votarte pero ... * "Pero no debes usar la interfaz nativa de ninguna manera". * Esa es la opinión de uno. No hay razón para no usarlo si sabes lo que estás haciendo. A pesar de que soy compatible con PDO, no creo que esto deba ser presentado como un hecho, porque no hay nada de malo con la interfaz nativa. :) – netcoder

+1

@netcoder: Bueno depende. Las interfaces nativas para Oracle o DB2 ciertamente proporcionan montones de características personalizadas. Pero en este caso, la clase sqlite3 no ofrece nada en comparación con PDO, simplemente se siente como una divergencia API. Pero cierto, eso también es principalmente preferencia. – mario

+0

thx mario, hiciste mi día. –

Cuestiones relacionadas