Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

534
Visualizações
No se puede cargar la extensión en el módulo SQLite3, PHP

Necesito usar la extensión example.dll con el objeto SQLite3 en PHP. La extensión tiene un punto de entrada no estándar custom_init . sqlite3.extension_dir en php.ini se especifica correctamente. Probé el siguiente código:

 $dbconn = new SQLite3('test.db'); $dbconn->loadExtension('example.dll'); $dbconn->exec("SELECT load_extension('example.dll');");

Como se puede ver, utilicé dos enfoques para cargarlo.

Primer enfoque: $dbconn->loadExtension('sqldba.dll'); .

  • No funciona en mi XAMPP/Apache con el error Not supported in multithreaded Web servers , aunque se hace especialmente para esto. ¿Qué puede estar mal en la configuración de XAMPP/Apache?
  • En un servidor HTTP no tan conocido, devuelve "No se puede cargar la extensión" debido a un punto de entrada no estándar. ¿Puedo especificar un punto de entrada personalizado de alguna manera?

Segundo enfoque: $dbconn->exec("SELECT load_extension('example.dll', 'custom_init');"); .

  • Falla con error not authorized . ¿Hay alguna forma de llamar a sqlite3_enable_load_extension aquí? No puedo encontrar dicha función en la documentación del módulo "SQLite for PHP".

Upd: de alguna manera relacionado: ¿Cómo cargar la extensión sqlite en PDO?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

  • "No compatible con servidores web multiproceso"

De todos modos, esto no funcionará en IIS, lo cual (aparentemente) es preferible para mí. De acuerdo con esto (línea 414) solo está habilitado en ZTS (Zend Thread Safety). Deshabilitarlo se discute aquí . Todavía no tengo idea de qué está mal con la configuración de Apache.

  • "No se puede cargar la extensión" debido a un punto de entrada no estándar. ¿Puedo especificar un punto de entrada personalizado de alguna manera?

Nope. Tal vez alguien debería agregar una solicitud de función de "punto de entrada personalizado" al rastreador de PHP, no parece tan difícil.

  • "SELECT load_extension('example.dll', 'custom_init');" - falla con el error "no autorizado".

Debe llamar a sqlite3_enable_load_extension antes de hacer load_extension desde la consulta, y no hay un análogo de sqlite3_enable_load_extension en php-sqlite. Parchear PDO-Sqlite para esto se describe aquí , pero es muy inseguro. Agregar esto como una nueva característica en php-sqlite sería mucho mejor.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda