Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

541
Vistas
Constante de clase indefinida 'PDO::FETCH_DEFAULT'

Estoy usando PHP FluentPDO, esta consulta funciona en localhost, pero no en webhosting. La versión de PHP es 7.4, FluentPDO: "envms/fluentpdo": "^2.2" :

 $pdo = new PDO("mysql:dbname={$mysql['db_name']};host={$mysql['host']}", $mysql['user'], $mysql['password'], array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'", PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC)); $q = new Query($pdo); $q->from('table') ->where(['email' => 'admin@example.com']) ->select('id, name, email, password', true) ->fetchAll();

el error es:

Constante de clase indefinida 'PDO::FETCH_DEFAULT'

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

La versión de PHP es 7.4

Esta versión de PHP ya no es compatible. Actualice a una versión con soporte activo si puede.

PDO::FETCH_DEFAULT solo está disponible desde PHP 8.0.7, por lo que si está utilizando una versión anterior, esta constante no estará disponible.

La versión 2.2 de FluentPDO aún debería ser compatible con PHP 7.4, lo que hace que esto sea un error en FluentPDO. Ya existe una solicitud de extracción para corregir este error.

over 4 years ago · Santiago Trujillo Denunciar

0

Este paquete parece tener un error de configuración. La versión estable actual declara PHP/7.1 como versión mínima ( código ):

 "php": ">=7.1",

Sin embargo, está usando la constante PDO::FETCH_DEFAULT , que requiere PHP/8.0.7 o superior ( fuente y código ):

PDO::FETCH_DEFAULT (int) Especifica que se utilizará el modo de obtención predeterminado. Disponible a partir de PHP 8.0.7.

 /** @var int */ protected $currentFetchMode = PDO::FETCH_DEFAULT;

Tus opciones son:

  • Informe el problema y espere que se solucione manteniendo la compatibilidad con su versión de PHP. Editar: https://github.com/envms/fluentpdo/issues/326
  • Actualice a una versión de PHP compatible.
  • Busca otra biblioteca.
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda