« 空調服 | トップページ | サイト再開までの戦い。でもまだ他にもあるはず »

2005.06.29

PHP5.1Beta2:kinowiki動作メモ

PHP5.1 Beta2を入れてみたところ、kinowikiでこんなエラーが。

Fatal error: Only variables can be passed by reference in ...\kinowiki\system\kinowiki.inc.php on line 99
該当行↓:
    $protocol = strtolower(array_shift(explode('/', $_SERVER['SERVER_PROTOCOL'])));

エラーメッセージをみて、試しに分割。

    $dummy = explode('/', $_SERVER['SERVER_PROTOCOL']);
    $protocol = strtolower(array_shift($dummy));

これで動作しました。内部的に変数の使い方が変わってしまったんですかねえ。他は、parser.inc.php のarray_shiftを使っているところも同じように分割すれば動くようになりました。(他にも別の問題があるかも しれません)↓

    $e = T_Inline::parse(array_shift($text), $context);

追記:PHP5.1Beta2については、mktime() strtotime()の挙動が5.0.xから変わっていたりするので、まだまだ何か出てくるのかもしれません。(例えば、 strtotime("19700102") の結果が異なる。…5.1ではちゃんと考えて実装しないといけなくなったような)

|

« 空調服 | トップページ | サイト再開までの戦い。でもまだ他にもあるはず »

パソコン・インターネット」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/763/4754136

この記事へのトラックバック一覧です: PHP5.1Beta2:kinowiki動作メモ:

« 空調服 | トップページ | サイト再開までの戦い。でもまだ他にもあるはず »