質問編集履歴

1 ぐた

progman

progman score 50

2018/01/28 17:46  投稿

phpのmysql_real_escape_stringなどが使いたい
以前phpで開発したシステムをlamppに移行しようとしているのですが、
phpのバージョンが新しいもので
Warning (2): mysql_real_escape_string() [function.mysql-real-escape-string]: そのようなファイルやディレクトリはありません
といったエラーが出て正常動作しません。
phpの古いバージョンでサポートされていて、最新ではサポートされない機能を
結構使っているようです。
全機能をチェックして移行はとりあえず今はできないので、PHP 5.5相当で動かすには
どうすればよいでしょう?
昔のlamppでも入手するのがよいでしょうか?
どこで入手できるでしょう?
z  
それとも何か互換モードのようなものがあって、旧仕様で動かすことはできないでしょうか?  
それとも何か互換モードのようなものがあって、旧仕様で動かすことはできないでしょうか?
lamppのphpはPHP 5.6.32で、このphpが動作して上記のようなエラーになっているのでしょうが、OS(centOS)上にはPHP 5.4.16 が入っています。
lamppのapacheで使用するphpを5.4.16の方に切り替えて使用するといったことはできないでしょうか?
また、環境は複数あってmacosではphp 5.6.21で正常動作しているのですが、centosでは
上記の通り5.6.32で
Warning (2): mysql_real_escape_string() [function.mysql-real-escape-string]: そのようなファイルやディレクトリはありません
というエラーが出ています。
phpのバージョンの問題とも限らないでしょうか?
centos上でlamppのphpバージョン確認
[root@localhost bin]# pwd
/opt/lampp/bin
[root@localhost bin]# php -v
PHP 5.4.16 (cli) (built: Nov 15 2017 16:33:54)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
macos上でlamppのphpバージョン確認
SanPedro:XAMPP apple$ pwd
/Applications/XAMPP
SanPedro:XAMPP apple$ bin/php -v
PHP 5.6.21 (cli) (built: May 12 2016 03:39:40)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
  • PHP

    30489 questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る