Для создания пустого объекта JSON я обычно использую:
json_encode((object) null);
приведение null к объекту работает, но есть ли другой предпочтительный способ и/или проблемы с этим решением?