XAMP php5からphp7に更新でPDOが動作しないのを解決する

サクラVPSのCentOSを7にした。phpを7で運用開始したら色々と以前のソースで不適合が発生する。ローカルで使用のXAMPもphp7でということで更新作業を行った。
これでphp7で無効になったphp5の関数を修正する作業が捗る。

ここにあった情報でうまく行った(多謝!)
※php5からphp7へはapacheのconfファイル内で変更する必要があった。
それだけで問題なく動作した。
C:\Users\hoge>php -v
PHP 7.3.10 (cli) (built: Sep 24 2019 11:59:25) ( ZTS MSVC15 (Visual C++ 2017) x86 )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.10, Copyright (c) 1998-2018 Zend Technologies

●と思ったらあきまへんな状態に
MySQLのPDOでアクセスできないとエラーが・・・。色々検索したら以下修正が必要だった。
<?php phpinf() ?>で確認すると「no value」と表示される。以下はうまく行った状態で「mysql, odbc」と表示されている。

それと、「C:\xampp\php\ext」と表示されない。以下はうまく行った画面。

●修正・追加
コメントを外す。dir先を設定する。(以前こんなことした覚えがない・・・多分やってたのかね)
修正ファイル:php.ini
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
extension=pdo_odbc
;extension=pdo_pgsql

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
;extension_dir = “./”
; On windows:
extension_dir=”C:\xampp\php\ext”

extension=mbstring <— mb_convert_kana() が使えるようする

※XAMPでphp7対応版があったが、Windows7にはもはや未対応だった。XAMPを削除してから気付くことに。毎度だな。ローカルに入れていたデータはバックアップしてあるが、さてどうやて再インストールのXAMPに反映するか。
編集後記:バックアップのフォルダからデータベースのファルダをコピーすればOKだった。しかし一部テーブルに抜けが。やはりダンプしておくべきだった。(後悔先に立たず・・・)
標語:「余分な作業の発生を事前の確認で防ぐべし」

No tags for this post.
タイトルとURLをコピーしました