*

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

RAID の解説

そういや,前に自分の wiki サイトに用語集カテゴリ作って,適当に RAID に関する事をつらつら

記事を読む

FreeBSD で NFS (3) 【/etc/exports 詳解】

Seichan です.こんばんわ. 前回「FreeBSD で NFS (2)」で書いたとおり,/e

記事を読む

GEOM 再学習

Seichan です.こんばんわ. 最近,GEOM (modular disk I/O reque

記事を読む

VMware Server 上の FreeBSD の時刻がずれる

仕事中の Seichan です.忘れやすいので,メモメモ.隣の席の人から,「いつも見てるのに更新され

記事を読む

no image

LPI Level2 受けた

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

記事を読む

no image

データは何処に旅立った?

さて,でーたがとんだ?で報告した PostreSQL のデータですが,どうやら彼方へ旅立っていたよう

記事を読む

GEOM_LABEL をちょっと理解してみる

Seichan です.こんばんわ. 「GEOM 再学習」で宣言したとおり,GEOM の何かについて

記事を読む

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

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

記事を読む

no image

FreeBSD 5.3-RELEASE がリリース

突然,5.3-RC1 に戻った,前回のリリース騒ぎ.今回はきちんとリリースされ,アナウンスされた.

記事を読む

no image

ネットワーク環境を変えたのは前のエントリに言及してますが,不具合があったら連絡をぷりーづ. > お友

記事を読む

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 ↑