かえでBlog

色々なことを徒然と……

【PHP5.4】Call-time pass-by-reference has been removed回避対応

      2015/05/18

PHP5.4を動かす際にPHP Fatal error:  Call-time pass-by-reference has been removedと出たのでメモ

PHP5.4からCall-time pass-by-reference(関数呼び出しの際に参照渡しを行う)機能がなくなったみたいです。

対処方法は簡単。参照渡しを値渡しにすればいいのです。

<?php
	/**
	 *テスト
	*/
	$a=1;
	$b=2;
	function test(&$a,$b){
		return true;
	}
	//test(&$a,$b);//これを実行するとエラーになる
	test($a,$b);//エラー回避になる
?>

【&】を抜けばいいだけです。

実際はダメなのかもしれませんが動くのでこの対応でいいですよね……?

Semisecure Login Reimaginedを動かす際にエラーが表示され、上記の対応にしてるけど……2年前のソースだし違うプラグインを使ったほうがいいかもしれませんね。

 - PHP , , ,