PHPのエラー:Fatal error: Uncaught Error: [] operator not supported for strings in ~
PHP5.6からPHP7に上げた際のエラー
Uncaught Error: [] operator not supported for strings in ~
おそらく配列定義をしていなかったせいと思われる
$hairetsuTable=array();
を冒頭に追加
※$hairetsuTableはコード内で使われる配列変数
さくらのサーバー PHP4x系から5.6へ移行した時のメモ
別サーバーで動かしていたPHP(4x系)のソースコードをさくらのサーバー(PHP5.6)に移動させたときに起きたことメモ
さくらのサーバーの癖か、4xを5.6にしたから起きた現象なのかの切り分けはついていない。
1. htmlspecialcharsの中身が空に
htmlspecialchars関数を利用する際に文字コードの指定をしていなかったテキストがすべて空の値を返していた。
2. PHP.iniでPEARのパスを指定していなかったため後からインストールしたPager.phpを利用すると「Fatal error: Class 'Pager' not found」エラーが出た。
php.iniに include_path="/home/ユーザー名/www/PEAR" を追加
php.iniに date.timezone="Asia/Tokyo" を追加
さくらのサーバーDB移行がファイルが大きすぎて出来ないときのメモ
さくらのサーバーに外部で利用していたDB(たとえばWORDPRESS)を移行させたい場合に元のsqlファイルが大きすぎる(具体的には1.6M以上)の場合の手法。
1. FTPを利用してsqlファイルをルートフォルダにアップロード(wwwファイル直下)
2. SSH(Tera Termなど)でさくらのサーバーに接続
3. 以下 SSHコマンド
mysql -h mysql[数字].db.sakura.ne.jp -u [ユーザー名] -p [データベース名]
→ パスワード入力を要求するので叩き込む
mysqlに接続が成功しているはず → mysql> みたいになっている
use データベースの名前
source /home/ユーザー名/www/アップロードしたsqlファイル名
→ なんだかんだ表示されて終了