Как сделать php код «echo 62837» << -16; «вернуть один и тот же результат между windows и linux?
Результат Windows: -176881664
Результат Linux: -759700962142060544
Сдвиг на отрицательное число вызывает исключение в PHP 7+, поэтому это явно недопустимо.
Fatal error: Uncaught ArithmeticError: Bit shift by negative number
В C он вызывает неопределенное поведение, смотрите: Сдвиг влево с отрицательным счетом сдвига
Чтобы ответить на ваш вопрос: Вы не можете заставить код, который вызывает неопределенное поведение, возвращать согласованные результаты на разных платформах. Этот код необходимо изменить, чтобы он не сдвигался на отрицательное число.
Других решений пока нет …