Thirty other people were injured, he said.
He said the explosion in a house in Rafah town appeared to have been caused by an old missile, which had previously failed to explode.
Security officials in Rafah said that the blast happened as rubble was being removed from the house, destroyed in last summer's 50-day Israel-Gaza war.
Eyewitnesses said that while workers and the owners of the house were removing debris, the missile suddenly exploded.