PHPのextension呼出しでundefined functionが発生(Windows wsl(Ubuntu))

Windows wslのUbuntuでphpのextensionをcall(curlやxmlのパース)すると「undefined function」が発生。
PHP Fatal error:  Uncaught Error: Call to undefined function curl_init() in ...
PHP Fatal error:  Uncaught Error: Call to undefined function simplexml_load_string()

Macだと適当に全部入りでやってくれるけどLinux系は個別にextensionをinstallする必要がある。
$ sudo apt install php

$ sudo apt install php-curl
$ sudo apt install php7.4-xml

パッケージを探す場合は、searchしてgrepするのが簡単。
$ apt search  php| grep xml
php-xml/focal 2:7.4+75 all
php-xml-htmlsax3/focal 3.0.0+really3.0.0-4 all
php-xml-rpc2/focal 1.1.3-0.1 all
php-xml-svg/focal 1.1.0-2 all
php-xmlrpc/focal 2:7.4+75 all
php7.4-xml/focal-updates,now 7.4.3-4ubuntu2.6 amd64 [installed]
php7.4-xmlrpc/focal-updates 7.4.3-4ubuntu2.6 amd64
  extract cluster node data from remote xmlsysd daemons
xmlsysd/focal 2.6.0-0ubuntu5 amd64

extensionの設定は、「/etc/php/」にある。
$ pwd
/etc/php/7.4
$ tree -d
├── apache2
│   └── conf.d
├── cli
│   └── conf.d
└── mods-available
もし、インストールしているのに使えない場合は、「extension=」の行がコメントアウトされてないか確認。
$ cat /etc/php/7.4/cli/conf.d/20-curl.ini
; configuration for php curl module
; priority=20
extension=curl.so


カテゴリ

Amazon

アクセスランキング

[ジャンルランキング]
コンピュータ
249位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
38位
アクセスランキングを見る>>

RSSリンクの表示

ブロとも申請フォーム

Copyright © nopgm