Citation :La taille max d'un int est de 12363031551Je sais pas d'où ça vient mais c'est louche. En 32 bits la taille max est de ~4 milliards pour des entiers non-signés, et de ~2 milliards s'ils sont signés.
Pour en revenir à ton problème: utiliser une plateforme, un OS et une distribution php 64 bits. Ça ma parait la seule solution viable (c'est la seule qui me vient à l'esprit en tous cas).
Note que c'est une déduction de ma part, la doc indique que la taille des entiers est dépendante de la plate-forme, j'en déduis que si toute ta plateforme est en 64 bits ton pb est réglé, mais je n'ai pas essayé.
J'ai éventuellement une autre piste (j'imagine qu'elle est bien pénible à mettre en œuvre): faire ton extension pour appeler les APIs système dédiées aux fichiers longs : fopen64, fstat64 ... Je ne sais pas si ces fonctions existent sous windows mais il y a nécessairement des équivalents, et ça implique de retourner le résultat sous forme de chaîne, puisque sous forme d'entier il sera trop long pour php. C'est clairement pas génial, je suppose que tu ne récupères pas la taille du fichier pour la beauté du geste et il faudra bien manipuler cette valeur après.