お知らせ
ホームページサービス(松・竹サービス)でのPHPのバージョンアップについて
2006年11月14日 (火曜日) 掲載
ホームページサービス(松・竹サービス)利用者各位
セキュリティ強化のため下記の日時でPHPのバージョンを4.3.11から
4.4.4にバージョンアップいたします.
それに伴い,サービスを一時停止しますので,ご連絡いたします.
日時:平成18年11月20日(月曜日)午前9時 ~ 約1分程度の停止
なお,バージョンアップに伴い,次のようなエラーメッセージが出る場合が
ございますのでご注意下さい.
簡単な説明を以下に述べますので,参考にして下さい.
・PHP4.4.0から定数値への参照の仕様が変更されました.
参照を返す関数の場合,受け取る側で値を代入するように記述すると,
Noticeが出ます(例1).また逆に,値を返す関数で参照を代入するように
記述すると,Noticeが出ます(例2).
(例1)
<?php
function &foo() {
return "foo";
}
$bar = foo();
?>
(例2)
<?php
function foo() {
return "foo";
}
$bar =& foo();
?>
例1・例2の場合,ともに以下のようなメッセージが出ます.
PHP Notice: Only variables should be assigned by reference in ...
また,array関数や,new で作成したオブジェクトを参照で返す場合も
同様のメッセージが出ます.
<?php
function & foo() {
return array("foo");
}
$bar = foo();
?>
この現象を回避するには,以下の例のように戻り値を一度変数に代入してください.
<?php
function & foo() {
$bar = array("foo");
return $bar;
}
?>
いずれの場合も,ホームページサービスでは,PHPの設定でエラーメッセージを
表示しないようにしています(display_errors=off)ので,通常はこれらのメッ
セージはブラウザには表示されませんが,デバッグのために,この設定を変更さ
れている利用者はご注意ください.
詳細については次のページを参考にしてください.
PHP 公式サイトの修正点の掲載
http://www.php.net/ChangeLog-4.php
PHP マニュアル リファレンスを返す
http://jp.php.net/manual/ja/language.references.return.php
| お問い合わせ | 京都大学 情報環境部 情報基盤課 学術情報基盤グループ
|
|---|
