*

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

Pukiwiki

自民党キター と喜んでいる最中ですが,はまっていた事があったの備忘録をかねてのメモ. # 選挙ネタは

記事を読む

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

Seichanです.こんばんわ. サーバの移行に伴い,PHP のバージョンが 5.3 から 5.4

記事を読む

FreeBSD 7.0-RELEASE が来たよー.あと,NanoBSD いい感じ

FreeBSD 7.0-RELEASE が,一応 2008/02 に間に合う形でリリースされました.

記事を読む

FreeBSD 6.3-RELEASE でちょっと遊んだ

Seichan です.インフルエンザで丸々一週間会社を休んでしまいました...有給休暇の残がゼロに!

記事を読む

no image

5.3-RELEASE から RC に…

FreeBSD-5.3-RELEASE がもう少しで出るなぁ〜 と思っていたら,cvsweb を見た

記事を読む

FreeBSD は / から ZFS 化出来るらしいよ

Seichan です.とりあえずよさげなサイトを見つけたので,めもめも.http://www.ish

記事を読む

no image

FreeNAS

眠れないので,ある程度かいてみるテスト(汗) な Seichan です.こばわ. FreeNAS で

記事を読む

FreeBSD で NFS (1) 【NFS概要】

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

記事を読む

no image

atacontrol

ただいまなのです.Seichan です.じめじめしてて最悪… FreeBSD の ATA デバイスを

記事を読む

no image

Apache

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

記事を読む

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 ↑