*

pukiwiki を PHP 5.4 に対応させる方法 (2)

公開日: : 最終更新日:2013/12/21 FreeBSD, Other unix, PHP

Seichan です.こんばんわ.
pukiwiki を PHP 5.4 に対応させる方法 (1) の続きです.
Undefined variable,Only variable references,Strict Standard: Declaration of の修正になります.

 SPONSORED LINK
 

5. Notice: Undefined variable をつぶす
PHP 変数の $HTTP_SERVER_VARS は http://pukiwiki.sourceforge.jp/?%E8%B3%AA%E5%95%8F%E7%AE%B14%2F578 にある通り、$_POST に変更することで対応出来るようです.

Notice: Undefined variable: HTTP_SERVER_VARS in lib/init.php on line 28

$HTTP_SERVER_VERS と $_POST って元々入る内容が違うような… という気がしつつも修正しちゃいます.

lib/init.php line 25: foreach (array('SCRIPT_NAME', 'SERVER_ADMIN', 'SERVER_NAME',
  unset(${$key}, $_SERVER[$key], $HTTP_SERVER_VARS[$key]);

lib/init.php line 141:
  unset(${$ua}, $_SERVER[$ua], $HTTP_SERVER_VARS[$ua], $ua);

lib/init.php line 283: foreach (array('QUERY_STRING', 'argv', 'argc') as $key) {
  unset(${$key}, $_SERVER[$key], $HTTP_SERVER_VARS[$key]);

lib/init.php line 286:
  unset($REQUEST_URI, $HTTP_SERVER_VARS['REQUEST_URI']);

6. Notice: Only variable references をつぶす
new したオブジェクトをそのまま return で返すと出てしまう警告になります.回避方法はそのまま return せずに一度変数に突っ込んで,その変数を return する.という単純な方法で大丈夫です.

Notice: Only variable references should be returned by reference in lib/convert_html.php on line 144

lib/convert_html.php: function & Factory_Inline($text)
  return new Paragraph(' ' . substr($text, 1));

lib/convert_html.php: function & Factory_Inline($text)
  return new Inline($text);

lib/convert_html.php: function & Factory_DList(& $root, $text)
  return new DList($out);

lib/convert_html.php: function & Factory_Table(& $root, $text)
  return new Table($out);

lib/convert_html.php: function & Factory_YTable(& $root, $text)
  return new YTable(csv_explode(',', substr($text, 1)));

lib/convert_html.php: function & Factory_Div(& $root, $text)
  return new Div($matches);

lib/convert_html.php: function & Factory_Div(& $root, $text)
  return new Div($matches); // Seems legacy block plugin

lib/convert_html.php: function & Factory_Div(& $root, $text)
  return new Div($matches); // Seems multiline-enabled block plugin

7. Strict Standard: Declaration of をなくす
Class Element で canContain($obj) を定義しているのに,この Class を継承している Heading でも定義している為,オーバーロード出来ないよ.っていうエラーのようです.

Strict Standards: Declaration of Heading::canContain() should be compatible with Element::canContain($obj) in lib/convert_html.php on line 263

これは,index.php の error_reporting を戻せばメッセージ自体は抑制出来ますが気持ち悪いので以下の通り & を取って対応します.

lib/convert_html.php: class Heading extends Element
  function canContain(& $obj)

lib/convert_html.php: class HRule extends Element
  function canContain(& $obj)

lib/convert_html.php: class ListContainer extends Element
  function canContain(& $obj)

lib/convert_html.php: class ListElement extends Element
  function canContain(& $obj)

lib/convert_html.php: class BQuote extends Element
  function canContain(& $obj)

lib/convert_html.php: class Table extends Element
  function canContain(& $obj)

lib/convert_html.php: class YTable extends Element
  function canContain(& $obj)

lib/convert_html.php: class Pre extends Element
  function canContain(& $obj)

lib/convert_html.php: class Div extends Element
  function canContain(& $obj)

lib/convert_html.php: class Align extends Element
  function canContain(& $obj)

これで,E_ALL の状態でもエラーメッセージが表示されることは無くなるかと…

SPONSORED LINK
  ☆ ブログランキング参加しました (*≧∀≦)ノシ
にほんブログ村 IT技術ブログ FreeBSDへ 

関連記事

no image

qmail で SMTP-AUTH 環境を作ってみたけど…

咳が止まらず死ぬほどしんどいので会社休んで医者通いしてきた Seichan です.こんばんわ… 無く

記事を読む

no image

papu さんへご報告

なんだか,稚内にいないようなのでこっちに書いておく. papu さんのサイトを,こっちのサーバに移動

記事を読む

FreeBSD

FreeBSD で NFS (1) 【NFS概要】

Seichan です.こんばんわ.今年もあと1時間を切りました... ちょっと GEOM 以外に行

記事を読む

no image

PostgreSQL サーバをかえた

PostgreSQL を 8.0 系から,8.1 系に変更. そのついでに,物理的なサーバをかえた.

記事を読む

no image

Apache

うちの環境では,NFS & amd を利用して,ホームをお互いのマシンがマウントしている. この中で

記事を読む

no image

qmail

qmail も ports から入れてみた. いつも当てているパッチが Makefile 自動化と言

記事を読む

linux tux 82 logo

2.6.9-55.0.9.ELsmp って微妙な気がするんだけど

Seichan です.まいど.kernel 2.6.9-55.0.9 が出てるのと,VMware S

記事を読む

no image

fukuoka-u.ac.jp の NTP サーバ

2ch の Linux 板のあるスレッドに,福岡大学の ntp 管理者(?) からの書込みがあった.

記事を読む

no image

orz

間違って,make world 中のマシンをリブートしてしもた… もっかい make world や

記事を読む

ssl_icon

PHPki で簡単証明書運用 (2) 【初期設定と Root CA 証明書作成】

Seichan です.こんばんわ. さて,先日の「PHPki で簡単証明書運用 (1) 【修正版】

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Google Adsense

ssl_icon
PHPki で簡単証明書運用 (5) 【管理ユーザのメンテナンスとCRLの取得】

Seichanです.こんばんわ. いつものとおり,だいぶ日が経ってし

ssl_icon
PHPki で簡単証明書運用 (4) 【作成した証明書を管理する】

Seichanです.こんばんわ. 先日の「PHPki で簡単証明書運

ssl_icon
PHPki で簡単証明書運用 (3) 【署名されたサーバ証明書を作る】

Seichan です.こんばんわ. さて,先日の「PHPki で簡単

ssl_icon
PHPki で簡単証明書運用 (2) 【初期設定と Root CA 証明書作成】

Seichan です.こんばんわ. さて,先日の「PHPki で簡単

ssl_icon
PHPki で簡単証明書運用 (1) 【PHPki の修正と導入 (修正版)】

Seichan です.こんばんわ. 先日「PHPki で簡単証明書運

→もっと見る

PAGE TOP ↑