*

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

ports で頑張って見た

apache13-modssl を ports からインストールしてみた. suexec を On

記事を読む

PHPki で簡単証明書運用 (1)

この記事は phpki-0.83.tar.gz を元に書きましたが,不具合多数の為最新のソースコード

記事を読む

no image

LPI Level2 受けた

11/20 に受けて,受かった.ノルマは達成.ランチおごらなくて済みます(w だけではアレですので,

記事を読む

Movable Type 4.23 から WordPress 3.7 に移行

Seichanです.こんばんわ. 今まで Movable Type を使っていたのですが,アップグ

記事を読む

FreeBSD で NFS (4) 【NFSクライアントとマウントオプション】

Seichan です.こんばんわ. 前回「FreeBSD で NFS (3)」までは NFS Se

記事を読む

no image

もっともセキュアなOSはBSDだそうだ

ITmediaによると,もっともセキュアな OS はオープンソースプラットホームの BSD と Ma

記事を読む

no image

NFS オプションを変えてみた

ので,パフォーマンステスト中

記事を読む

GEOM RAID1 を管理する

Seichan です.こんばんわ. 前回の「GEOM RAID0 と GEOM RAID1 の組み

記事を読む

no image

業務連絡

Celeron 300A な CPU を PPPoE ルータにした所,それなりにスピード叩き出してて

記事を読む

no image

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

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

記事を読む

Message

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

Google Adsense

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

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

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

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

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

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

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

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

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

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

→もっと見る

PAGE TOP ↑