<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/migration84.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'en',
  ),
  'this' => 
  array (
    0 => 'migration84.constants.php',
    1 => 'New Global Constants',
    2 => 'New Global Constants',
  ),
  'up' => 
  array (
    0 => 'migration84.php',
    1 => 'Migrating from PHP 8.3.x to PHP 8.4.x',
  ),
  'prev' => 
  array (
    0 => 'migration84.new-functions.php',
    1 => 'New Functions',
  ),
  'next' => 
  array (
    0 => 'migration84.incompatible.php',
    1 => 'Backward Incompatible Changes',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'appendices/migration84/constants.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="migration84.constants" class="sect1">
 <h2 class="title">New Global Constants</h2>

 <div class="sect2" id="migration84.constants.core">
  <h3 class="title">Core</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="outcontrol.constants.php#constant.php-output-handler-processed">PHP_OUTPUT_HANDLER_PROCESSED</a></code></strong>
   </li>
   <li>
    <strong><code><a href="reserved.constants.php#constant.php-sbindir">PHP_SBINDIR</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.curl">
  <h3 class="title">cURL</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="curl.constants.php#constant.curl-http-version-3">CURL_HTTP_VERSION_3</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curl-http-version-3only">CURL_HTTP_VERSION_3ONLY</a></code></strong>
   </li>
   <li>
    <strong><code>CURL_TCP_KEEPCNT</code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlopt-prereqfunction">CURLOPT_PREREQFUNCTION</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curl-prereqfunc-ok">CURL_PREREQFUNC_OK</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curl-prereqfunc-abort">CURL_PREREQFUNC_ABORT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlopt-server-response-timeout">CURLOPT_SERVER_RESPONSE_TIMEOUT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlopt-debugfunction">CURLOPT_DEBUGFUNCTION</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-text">CURLINFO_TEXT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-header-in">CURLINFO_HEADER_IN</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-data-in">CURLINFO_DATA_IN</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-data-out">CURLINFO_DATA_OUT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-ssl-data-out">CURLINFO_SSL_DATA_OUT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-ssl-data-in">CURLINFO_SSL_DATA_IN</a></code></strong>
   </li>
   <li>
    <strong><code><a href="curl.constants.php#constant.curlinfo-posttransfer-time-t">CURLINFO_POSTTRANSFER_TIME_T</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.intl">
  <h3 class="title">Intl</h3>

  <ul class="simplelist">
   <li>
    <strong><code>PATTERN</code></strong>
     (<span class="classname"><a href="class.intldateformatter.php" class="classname">IntlDateFormatter</a></span>)
   </li>
   <li>
    <strong><code>PROPERTY_IDS_UNARY_OPERATOR</code></strong>
     (<span class="classname"><a href="class.intlchar.php" class="classname">IntlChar</a></span>)
   </li>
   <li>
    <strong><code>PROPERTY_ID_COMPAT_MATH_START</code></strong>
     
   </li>
   <li>
    <strong><code>PROPERTY_ID_COMPAT_MATH_CONTINUE</code></strong>
     
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.ldap">
  <h3 class="title">LDAP</h3>

  <ul class="simplelist">
   <li>
    <strong><code>LDAP_OPT_X_TLS_PROTOCOL_MAX</code></strong>
   </li>
   <li>
    <strong><code>LDAP_OPT_X_TLS_PROTOCOL_TLS1_3</code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.libxml">
  <h3 class="title">libxml</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="libxml.constants.php#constant.libxml-recover">LIBXML_RECOVER</a></code></strong>
   </li>
   <li>
    <strong><code><a href="libxml.constants.php#constant.libxml-no-xxe">LIBXML_NO_XXE</a></code></strong>.
     This is used together with <strong><code><a href="libxml.constants.php#constant.libxml-noent">LIBXML_NOENT</a></code></strong>
     when entity substitution should be performed,
     while disallowing external entity loading.
     This constant is available as of libxml2 2.13.
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.mysqli">
  <h3 class="title">MySQLi</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="mysqli.constants.php#constant.mysqli-type-vector">MYSQLI_TYPE_VECTOR</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.openssl">
  <h3 class="title">OpenSSL</h3>

  <ul class="simplelist">
   <li><strong><code>X509_PURPOSE_OCSP_HELPER</code></strong></li>
   <li><strong><code>X509_PURPOSE_TIMESTAMP_SIGN</code></strong></li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.pcntl">
  <h3 class="title">PCNTL</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="pcntl.constants.php#constant.sigckpt">SIGCKPT</a></code></strong> (DragonFlyBSD only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.sigckptexit">SIGCKPTEXIT</a></code></strong> (DragonFlyBSD only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.wexited">WEXITED</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.wstopped">WSTOPPED</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.wnowait">WNOWAIT</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-all">P_ALL</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-pid">P_PID</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-pgid">P_PGID</a></code></strong>
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-pidfd">P_PIDFD</a></code></strong> (Linux only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-uid">P_UID</a></code></strong> (NetBSD/FreeBSD only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-gid">P_GID</a></code></strong> (NetBSD/FreeBSD only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-sid">P_SID</a></code></strong> (NetBSD/FreeBSD only)
   </li>
   <li>
    <strong><code><a href="pcntl.constants.php#constant.p-jailid">P_JAILID</a></code></strong> (FreeBSD only)
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.pgsql">
  <h3 class="title">PGSQL</h3>

  <ul class="simplelist">
   <li><strong><code><a href="pgsql.constants.php#constant.pgsql-tuples-chunk">PGSQL_TUPLES_CHUNK</a></code></strong></li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.posix">
  <h3 class="title">POSIX</h3>

  <ul class="simplelist">
   <li><strong><code><a href="posix.constants.sysconf.php#constant.posix-sc-child-max">POSIX_SC_CHILD_MAX</a></code></strong></li>
   <li><strong><code><a href="posix.constants.sysconf.php#constant.posix-sc-clk-tck">POSIX_SC_CLK_TCK</a></code></strong></li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.sockets">
  <h3 class="title">Sockets</h3>

  <p class="simpara">
   The following socket options are now defined if they are supported:
  </p>

  <ul class="simplelist">
   <li>
    <strong><code><a href="sockets.constants.php#constant.so-exclusiveaddruse">SO_EXCLUSIVEADDRUSE</a></code></strong> (Windows only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.sock-conn-dgram">SOCK_CONN_DGRAM</a></code></strong> (NetBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.sock-dccp">SOCK_DCCP</a></code></strong> (NetBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.tcp-syncnt">TCP_SYNCNT</a></code></strong> (Linux only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.so-exclbind">SO_EXCLBIND</a></code></strong> (Solaris/Illumos only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.so-nosigpipe">SO_NOSIGPIPE</a></code></strong> (macOS and FreeBSD)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.so-linger-sec">SO_LINGER_SEC</a></code></strong> (macOS only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.ip-portrange">IP_PORTRANGE</a></code></strong> (FreeBSD/NetBSD/OpenBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.ip-portrange-default">IP_PORTRANGE_DEFAULT</a></code></strong> (FreeBSD/NetBSD/OpenBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.ip-portrange-high">IP_PORTRANGE_HIGH</a></code></strong> (FreeBSD/NetBSD/OpenBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.ip-portrange-low">IP_PORTRANGE_LOW</a></code></strong> (FreeBSD/NetBSD/OpenBSD only)
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.sock-nonblock">SOCK_NONBLOCK</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.sock-cloexec">SOCK_CLOEXEC</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sockets.constants.php#constant.so-bindtoifindex">SO_BINDTOIFINDEX</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.sodium">
  <h3 class="title">Sodium</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis128l-keybytes">SODIUM_CRYPTO_AEAD_AEGIS128L_KEYBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis128l-nsecbytes">SODIUM_CRYPTO_AEAD_AEGIS128L_NSECBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis128l-npubbytes">SODIUM_CRYPTO_AEAD_AEGIS128L_NPUBBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis128l-abytes">SODIUM_CRYPTO_AEAD_AEGIS128L_ABYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis256-keybytes">SODIUM_CRYPTO_AEAD_AEGIS256_KEYBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis256-nsecbytes">SODIUM_CRYPTO_AEAD_AEGIS256_NSECBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis256-npubbytes">SODIUM_CRYPTO_AEAD_AEGIS256_NPUBBYTES</a></code></strong>
   </li>
   <li>
    <strong><code><a href="sodium.constants.php#constant.sodium-crypto-aead-aegis256-abytes">SODIUM_CRYPTO_AEAD_AEGIS256_ABYTES</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.tokenizer">
  <h3 class="title">Tokenizer</h3>
  <ul class="simplelist">
   <li>
    <strong><code><a href="tokens.php#constant.t-public-set">T_PUBLIC_SET</a></code></strong>
   </li>
   <li>
    <strong><code><a href="tokens.php#constant.t-protected-set">T_PROTECTED_SET</a></code></strong>
   </li>
   <li>
    <strong><code><a href="tokens.php#constant.t-private-set">T_PRIVATE_SET</a></code></strong>
   </li>
  </ul>
 </div>

 <div class="sect2" id="migration84.constants.xml">
  <h3 class="title">XML</h3>

  <ul class="simplelist">
   <li>
    <strong><code><a href="xml.constants.php#constant.xml-option-parse-huge">XML_OPTION_PARSE_HUGE</a></code></strong>
     which allows parsing large inputs with
     <span class="function"><a href="function.xml-parse.php" class="function">xml_parse()</a></span> and
     <span class="function"><a href="function.xml-parse-into-struct.php" class="function">xml_parse_into_struct()</a></span>.
   </li>
  </ul>
 </div>

</div><?php manual_footer($setup); ?>