Example 1
<?php header('Link: </image.jpg>; rel=preload; as=image', false);
In Example 1 all work perfectly. In Chrome Network Tab we can see Response headers cf-h2-pushed
Example 2
<?php header('Link: </image.jpg>; rel="preload"; as="image"', false);
In this example we surrounded values in header by double quotes. Now we have strange behavior. In Chrome Network Tab there aren’t any cf-h2-pushed headers. Server Push not work.
But according to the rfc5988 double quotes are allowed.
P.S.
Recently Symfony introduce new WebLink component for preloading assets by HTTP/2 server push. This component creates Link HTTP headers with double quotes. So there is problem to use it with Cloudflare