Portál AbcLinuxu, 11. května 2025 23:55
apt install php8.1-dev pecl install dbaseV adresáři /usr/lib/php/20220829/ mám nyní soubor dbase.so V adresáři /etc/php/8.1/apache2/conf.d jsem vytvořil link na soubor 20-dbase.ini do kterého jsem zkoušel dát:
extension=/usr/lib/php/20220829/dbase.so i extension=dbase.soAle rozšíření nefunguje
Řešení dotazu:
root@mail:/# ls /etc/php/8.1/mods-available | grep dbase dbase.inib)
root@mail:/# cat /etc/php/8.1/mods-available/dbase.ini ; configuration for php curl module ; priority=20 extension=/usr/lib/php/20220829/dbase.soc)
root@mail:/# ls -l /etc/php/8.1/apache2/conf.d/20-dbase.ini lrwxrwxrwx 1 root root 37 čen 3 12:35 /etc/php/8.1/apache2/conf.d/20-dbase.ini -> /etc/php/8.1/mods-available/dbase.inid)
root@mail:/# ls -l /etc/php/8.1/cli/conf.d/20-dbase.ini lrwxrwxrwx 1 root root 37 čen 3 12:35 /etc/php/8.1/cli/conf.d/20-dbase.ini -> /etc/php/8.1/mods-available/dbase.inie) ano, reload, restart proběhl...
Additional .ini files parsed- a jedna část textu je
/etc/php/8.1/apache2/conf.d/20-dbase.ini, takže soubor podle mě načte...
root@mail:/# ls -l /etc/apache2/mods-enabled/*php* lrwxrwxrwx 1 root root 39 bře 29 22:44 /etc/apache2/mods-enabled/php8.1.conf -> /etc/apache2/mods-available/php8.1.conf lrwxrwxrwx 1 root root 39 bře 29 22:44 /etc/apache2/mods-enabled/php8.1.load -> /etc/apache2/mods-available/php8.1.load
/etc/php/8.1/apache2/conf.d/10-mysqlnd.ini, /etc/php/8.1/apache2/conf.d/10-opcache.ini, /etc/php/8.1/apache2/conf.d/10-pdo.ini, /etc/php/8.1/apache2/conf.d/15-xml.ini, /etc/php/8.1/apache2/conf.d/20-bcmath.ini, /etc/php/8.1/apache2/conf.d/20-bz2.ini, /etc/php/8.1/apache2/conf.d/20-calendar.ini, /etc/php/8.1/apache2/conf.d/20-ctype.ini, /etc/php/8.1/apache2/conf.d/20-curl.ini, /etc/php/8.1/apache2/conf.d/20-dbase.ini, /etc/php/8.1/apache2/conf.d/20-dom.ini, /etc/php/8.1/apache2/conf.d/20-exif.ini, /etc/php/8.1/apache2/conf.d/20-ffi.ini, /etc/php/8.1/apache2/conf.d/20-fileinfo.ini, /etc/php/8.1/apache2/conf.d/20-ftp.ini, /etc/php/8.1/apache2/conf.d/20-gd.ini, /etc/php/8.1/apache2/conf.d/20-gettext.ini, /etc/php/8.1/apache2/conf.d/20-iconv.ini, /etc/php/8.1/apache2/conf.d/20-intl.ini, /etc/php/8.1/apache2/conf.d/20-ldap.ini, /etc/php/8.1/apache2/conf.d/20-mbstring.ini, /etc/php/8.1/apache2/conf.d/20-mcrypt.ini, /etc/php/8.1/apache2/conf.d/20-mysqli.ini, /etc/php/8.1/apache2/conf.d/20-pdo_firebird.ini, /etc/php/8.1/apache2/conf.d/20-pdo_mysql.ini, /etc/php/8.1/apache2/conf.d/20-phar.ini, /etc/php/8.1/apache2/conf.d/20-posix.ini, /etc/php/8.1/apache2/conf.d/20-pspell.ini, /etc/php/8.1/apache2/conf.d/20-readline.ini, /etc/php/8.1/apache2/conf.d/20-shmop.ini, /etc/php/8.1/apache2/conf.d/20-simplexml.ini, /etc/php/8.1/apache2/conf.d/20-soap.ini, /etc/php/8.1/apache2/conf.d/20-sockets.ini, /etc/php/8.1/apache2/conf.d/20-ssh2.ini, /etc/php/8.1/apache2/conf.d/20-sysvmsg.ini, /etc/php/8.1/apache2/conf.d/20-sysvsem.ini, /etc/php/8.1/apache2/conf.d/20-sysvshm.ini, /etc/php/8.1/apache2/conf.d/20-tokenizer.ini, /etc/php/8.1/apache2/conf.d/20-xmlreader.ini, /etc/php/8.1/apache2/conf.d/20-xmlwriter.ini, /etc/php/8.1/apache2/conf.d/20-xsl.ini, /etc/php/8.1/apache2/conf.d/20-zip.ini, /etc/php/8.1/apache2/conf.d/25-interbase.iniTakže 20-dbase.ini načetl, tento soubor obsahuje
; configuration for dbase module ; priority=20 extension=/usr/lib/php/20220829/dbase.soale přesto dbase nejde...
ale přesto dbase nejde...To poznas jak? Mas nejaky vzorovy kod ktery testujes? Kdyz ho pustis v konzoli: php <tvuj skript> tak to take nefunguje?
< echo 'Zkouska na cteni databazoveho souboru DBF:a výstup je
'; $db = dbase_open('SOUBOR.DBF', 0); $row = dbase_get_record_with_names($db, 3); var_dump($row); >
Zkouska na cteni databazoveho souboru DBF: Fatal error: Uncaught Error: Call to undefined function dbase_open() in /var/www/vidinfo/testy/opendbtest.php:6 Stack trace: #0 {main} thrown in /var/www/vidinfo/testy/opendbtest.php on line 6
root@mail:/# /usr/bin/php8.1 ./opendbtest.php PHP Warning: PHP Startup: dbase: Unable to initialize module Module compiled with module API=20220829 PHP compiled with module API=20210902 These options need to match in Unknown on line 0 PHP Warning: PHP Startup: dbase: Unable to initialize module Module compiled with module API=20220829 PHP compiled with module API=20210902 These options need to match in Unknown on line 0 Zkouska na cteni databazoveho souboru DBF:Takže mi nesedí verze php a modulu dbase. Akorát mi není jasné, jak je mám sjednotit...
PHP Fatal error: Uncaught Error: Call to undefined function dbase_open() in /var/www/vidinfo/testy/opendbtest.php:6 Stack trace: #0 {main} thrown in /var/www/vidinfo/testy/opendbtest.php on line 6
sudo update-alternatives --set php /usr/bin/php8.1 sudo update-alternatives --set phar /usr/bin/phar8.1 sudo update-alternatives --set phar.phar /usr/bin/phar.phar8.1 sudo update-alternatives --set phpize /usr/bin/phpize8.1 sudo update-alternatives --set php-config /usr/bin/php-config8.1Až budeš mít nastavenou správnou verzi ve cli, znovu nainstaluj dbase a pro ono php pak uprav cestu v ini.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.