Skip to content

AssignmentToVoid

voidを返す関数から代入しようとした場合に発生します:

<?php
function foo() : void {}
$a = foo();

なぜこれが問題なのか

voidを返す関数はPHPではnullを返すものとして扱われますが(そのため、これ自体はランタイムエラーにはつながりません)、voidはプログラミング言語全般で代入目的で設計されていない概念です。

修正方法

代入を完全に削除するだけで修正できます:

<?php
function foo() : void {}
foo();

ユーザーノート