PHP関連のトラブル

PHPで#includeが利かず

あるPHPプログラムでは、

<!–#include virtual=”./xxx/xxx.txt” –>

で、データ表示ができたのですが、

別のPHPプログラムでは、動作しませんでしました。

少し考えました。

< ?php
include ‘./xxx/xxx.txt’;
?>

できました。

何故?

windows PHPでGDライブラリを動かす

PHP(5.2.0)プログラム内で、どうしてもGDライブラリを使用した画像処理をする必要があり、テスト環境であるWindows・Apache2.2で動作するための環境設定をしました。

(1)php.iniの編集

以下の定義エリア付近の
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;

; extension_dir

コメントアウトし、

extension_dir = “C:/php/ext”

のようにGDライブラリ(php_gd2.dll)が保存されている拡張ライブラリ・ディレクトリのパスを記述します。

次に、以下の定義エリア付近の
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

; extension=php_gd2.dll

をコメントアウトします。

(2)httpd.confの編集

# Configuring PHP5/Server-Module

が、定義さている付近の、

# PHPIniDir “C:/Program Files/php”

を、

PHPIniDir “C:/php”

のように、書き換えます。

(3)上記(1)、(2)のファイルを保存したら、apacheを再起動して、完了。

PHPで、<?xml version=”1.0″ encoding=”utf-8″?>記述でエラー

PHPファイルの頭に

< ?xml version=”1.0″ encoding=”utf-8″?>が記載しましたら、

Parse error: syntax error, unexpected T_STRING in ・・・

というエラーが出ました。

< ? ……?>の記載があると、PHPのスクリプトと見なされたのが原因でした。

< ?php echo ‘<?xml version=”1.0″ encoding=”utf-8″?>’; ?>

という記述に変えて、見事解決。

【2012年2月23日】緊急事態

明日、運用開始するとあるお客様のホームページのPHPソースのアルゴリズムに不備。

用事を途中で断って、高速道路を利用して工房に戻り、緊急対策。

4時間ほど集中して、なんとか対応完了。

しびれた~。

昨日に引き続き緊急事態発生。

google mapsのバージョンが変わり、API KEYを取得できず、表示不可に。

困った、困った。

結局、Googleマップのマイプレイスで代替。

無料な分だけ、永続的に利用できないのは当たり前。

臨機応変に対応するのもプロの仕事なり。