Israel will observe a "humanitarian ceasefire" in Gaza after nine days of rocket fire against militants.