I think it would need to be a background-image if you want it referenced only in the CSS.
A reason for not having images (as opposed to background-images) in the CSS... Generally images in the HTML markup are part of the page 'content'. The CSS is purely presentational. It is good to separate the two. Your page should at least work without the CSS applied.
IMO you should be managing the image URLs in the PHP.