Boxtops. My belief this that employers have to give 'zero hours contract' staff the same amount of holiday as other employees. This means a minimum of the statutory figure of 28 days per annum, which includes public holidays, for a full timer. For a zero hours worker, holiday is based upon the actual number of hours worked in a previous period - which may be zero of course. The '28 days requirement' equates to holiday accrued at a rate of 10.77% of the hours worked. It may be a different percentage if the employer offers all employees more, but I am quoting the statutory minimum.
One issue is the definition of a 'period' - I think ACAS recommend averaging the holiday accrued over the previous 12 weeks period.
I think (but am not sure) that casual workers are different, in that they have no contract - they are employed purely for the hours done - and as such have no other holiday rights. However, just because an employer considers one to be a 'casual worker' doesn't necessarily mean the law would see it that way, if tested.