title: php: unexpected pack("N")/unpack("N") behaviour with negative number
body: <p>I have such script to pack and unpack a negative number:</p>
  <pre><code>&lt;?
  $from = -123456;
  $to  = unpack(&quot;N&quot;, pack(&quot;N&quot;, $from));
  echo $to[1] . &quot;\n&quot;;;
  ?&gt;
  </code></pre>
  <p>On an Linux host (RHEL 2.6.32-220.el6.x86_64) with PHP 5.4.7 <code>$to[1]</code> has the same value as input (-123456)</p>
  <p>On another Linux host (RHEL 3.10.0-1160.42.2.el7.x86_64) with PHP 7.3.6 the <code>$to[1]</code> has value 4294843840.</p>
  <p>What's wrong? Why PHP 7 is acting so?</p>