*

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へ 

関連記事

FreeBSD

GEOM のモジュールを理解する

Seichan です.こんばんわ. GEOM の状態がどういう風になっているのかを確認したい.なん

記事を読む

no image

LPI Level1 申し込んだ

Seichan です.2週間はペンギンにどっぷり浮気します.だえもんさん怒らないで下さい… とりあえ

記事を読む

no image

qmail

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

記事を読む

no image

djbdns から bind へ移行

DMZ 構成にして,ネットワーク構成を色々変更して,何か良くわからないんですが, djbdns でう

記事を読む

no image

djbdns

新しく入れ替えたマシンですが,当然サーバソフトウェアは入っていません. 同居人に実習形式で導入しても

記事を読む

no image

5.3-RELEASE から RC に…

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

記事を読む

no image

祝(?) 180,000Km & watchdog timeout…

こんばんわ.Seichan です.最近さらにバタバタと過ごしております. まったりする時間が欲しい

記事を読む

pukiwiki-official

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

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

記事を読む

wordpress-logo-100x100

Movable Type 4.23 から WordPress 3.7 に移行

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

記事を読む

no image

Courier-imap の LDAP 化

Seichan です.ねむっ とりあえず,いい加減,Courier-imap を使う上で,完全な L

記事を読む

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 ↑