# php_manual

id: OAuthProvider::callTimestampNonceHandler
type: function
doc:
<comment>Description:</comment>
  Calls the timestampNonceHandler callback
  
  Calls the registered timestamp handler callback function, which is set with
  OAuthProvider::timestampNonceHandler.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::timestampNonceHandler


id: OAuthProvider::callconsumerHandler
type: function
doc:
<comment>Description:</comment>
  Calls the consumerNonceHandler callback
  
  Calls the registered consumer handler callback function, which is set with
  OAuthProvider::consumerHandler.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::consumerHandler


id: OAuthProvider::calltokenHandler
type: function
doc:
<comment>Description:</comment>
  Calls the tokenNonceHandler callback
  
  Calls the registered token handler callback function, which is set with
  OAuthProvider::tokenHandler.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::tokenHandler


id: OAuthProvider::checkOAuthRequest
type: function
doc:
<comment>Description:</comment>
  Check an oauth request
  
  Checks an OAuth request.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string</info>  <strong>$uri</strong>     The optional URI, or endpoint.
  <info>string</info>  <strong>$method</strong>  The HTTP method. Optionally pass in one of the  <info>OAUTH_HTTP_METHOD_*</info> OAuth
                   constants.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::reportProblem


id: OAuthProvider::consumerHandler
type: function
doc:
<comment>Description:</comment>
  Set the consumerHandler handler callback
  
  Sets the consumer handler callback, which will later be called with
  OAuthProvider::callConsumerHandler.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback_function</strong>  The <info>callable</info> functions name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::callConsumerHandler


id: OAuthProvider::generateToken
type: function
doc:
<comment>Description:</comment>
  Generate a random token
  
  Generates a <info>string</info> of pseudo-random bytes.

<comment>Param:</comment>
  <info>int</info>   <strong>$size</strong>    The desired token length, in terms of bytes.
  <info>bool</info>  <strong>$strong</strong>  Setting to <info>true</info> means <return>/dev/random</return> will be used for entropy, as otherwise the
                 non-blocking <return>/dev/urandom</return> is used. This parameter is ignored on Windows.

<comment>Return:</comment>
  <info>string</info>  The generated token, as a <info>string</info> of bytes.

<comment>See Also:</comment>
   * <strong>openssl_random_pseudo_bytes()</strong>
   * <strong>mcrypt_create_iv()</strong>


id: OAuthProvider::is2LeggedEndpoint
type: function
doc:
<comment>Description:</comment>
  is2LeggedEndpoint
  
  The 2-legged flow, or request signing. It does not require a token.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$params_array</strong>  

<comment>Return:</comment>
  <info>void</info>  An <class>OAuthProvider</class> <info>object</info>.

<comment>See Also:</comment>
   * OAuthProvider::__construct


id: OAuthProvider::isRequestTokenEndpoint
type: function
doc:
<comment>Description:</comment>
  Sets isRequestTokenEndpoint
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>bool</info>  <strong>$will_issue_request_token</strong>  Sets whether or not it will issue a request token, thus
                                   determining if OAuthProvider::tokenHandler needs to be called.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::setRequestTokenPath
   * OAuthProvider::reportProblem


id: OAuthProvider::removeRequiredParameter
type: function
doc:
<comment>Description:</comment>
  Remove a required parameter
  
  Removes a required parameter.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string</info>  <strong>$req_params</strong>  The required parameter to be removed.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * OAuthProvider::setParam
   * OAuthProvider::addRequiredParameter


id: OAuthProvider::reportProblem
type: function
doc:
<comment>Description:</comment>
  Report a problem
  
  Pass in a problem as an <class>OAuthException</class>, with possible problems listed in the OAuth constants
  section.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string</info>  <strong>$oauthexception</strong>  The <class>OAuthException</class>.

<comment>Return:</comment>
  <info>string</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::checkOAuthRequest
   * OAuthProvider::isRequestTokenEndpoint


id: OAuthProvider::setParam
type: function
doc:
<comment>Description:</comment>
  Set a parameter
  
  Sets a parameter.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string</info>  <strong>$param_key</strong>  The parameter key.
  <info>mixed</info>   <strong>$param_val</strong>  The optional parameter value.
                      
                      To exclude a parameter from signature verification, set its value to <info>null</info>.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * OAuthProvider::addRequiredParameter


id: OAuthProvider::setRequestTokenPath
type: function
doc:
<comment>Description:</comment>
  Set request token path
  
  Sets the request tokens path.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  The path.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info>

<comment>See Also:</comment>
   * OAuthProvider::tokenHandler


id: OAuthProvider::timestampNonceHandler
type: function
doc:
<comment>Description:</comment>
  Set the timestampNonceHandler handler callback
  
  Sets the timestamp nonce handler callback, which will later be called with
  OAuthProvider::callTimestampNonceHandler. Errors related to timestamp/nonce are thrown to this
  callback.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback_function</strong>  The <info>callable</info> functions name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::callTimestampNonceHandler


id: OAuthProvider::tokenHandler
type: function
doc:
<comment>Description:</comment>
  Set the tokenHandler handler callback
  
  Sets the token handler callback, which will later be called with OAuthProvider::callTokenHandler.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback_function</strong>  The <info>callable</info> functions name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * OAuthProvider::callTokenHandler


id: OCICollection
type: class
doc:
<comment>Description:</comment>
  Funcionalidade OCI8 Collection.
  
  A classe <class>OCI-Collection</class> foi renomeada para <class>OCICollection</class> no PHP 8 e OCI8 3.0.0 para adequação aos
  padrões de nomes do PHP.


id: OCICollection::append
type: function
doc:
<comment>Description:</comment>
  Appends element to the collection
  
  Appends element to the end of the collection.

<comment>Param:</comment>
  <info>string</info>  <strong>$value</strong>  The value to be added to the collection.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCICollection::assign
type: function
doc:
<comment>Description:</comment>
  Assigns a value to the collection from another existing collection
  
  Assigns a value to the collection from another, previously created collection. Both collections
  must be created with  <strong>oci_new_collection()</strong> prior to using them.

<comment>Param:</comment>
  <info>OCICollection</info>  <strong>$from</strong>  An instance of OCICollection.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCICollection::assignElem
type: function
doc:
<comment>Description:</comment>
  Assigns a value to the element of the collection
  
  Assigns a value to the element with index <strong>$index</strong>.

<comment>Param:</comment>
  <info>int</info>     <strong>$index</strong>  The element index. First index is 0.
  <info>string</info>  <strong>$value</strong>  Can be a string or a number.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCICollection::free
type: function
doc:
<comment>Description:</comment>
  Frees the resources associated with the collection object
  
  Frees the resources associated with the collection object.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCICollection::getElem
type: function
doc:
<comment>Description:</comment>
  Returns value of the element
  
  Returns element's value with the index <strong>$index</strong> (0-based).

<comment>Param:</comment>
  <info>int</info>  <strong>$index</strong>  The element index. First index is 0.

<comment>Return:</comment>
  <info>string|float|null|false</info>  Returns <info>false</info> if such element doesn't exist; <info>null</info> if element is <info>null</info>;
                           string if element is column of a string datatype or number if element is
                           numeric field.

<comment>See Also:</comment>
   * 


id: OCICollection::max
type: function
doc:
<comment>Description:</comment>
  Returns the maximum number of elements in the collection
  
  Returns the maximum number of elements in the collection.

<comment>Return:</comment>
  <info>int|false</info>  Returns the maximum number as an integer, or <info>false</info> on errors.
             
             If the returned value is 0, then the number of elements is not limited.

<comment>See Also:</comment>
   * 


id: OCICollection::size
type: function
doc:
<comment>Description:</comment>
  Returns size of the collection
  
  Returns the size of the collection.

<comment>Return:</comment>
  <info>int|false</info>  Returns the number of elements in the collection or <info>false</info> on error.

<comment>See Also:</comment>
   * 


id: OCICollection::trim
type: function
doc:
<comment>Description:</comment>
  Trims elements from the end of the collection
  
  Trims <strong>$num</strong> of elements from the end of the collection.

<comment>Param:</comment>
  <info>int</info>  <strong>$num</strong>  The number of elements to be trimmed.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob
type: class
doc:
<comment>Description:</comment>
  Funcionalidade OCI8 LOB para objetos binários (BLOB) e caracteres (CLOB) grandes.
  
  A classe <class>OCI-Lob</class> foi renomeada para <class>OCILob</class> no PHP 8 e PECL OCI8 3.0.0 para adequação ao padrão de
  nomes do PHP.


id: OCILob::append
type: function
doc:
<comment>Description:</comment>
  Appends data from the large object to another large object
  
  Appends data from the large object to the end of another large object.
  
  Writing to the large object with this method will fail if buffering was previously enabled. You
  must disable buffering before appending. You may need to flush buffers with  before disabling
  buffering.

<comment>Param:</comment>
  <info>OCILob</info>  <strong>$from</strong>  The copied LOB.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 
   * 


id: OCILob::close
type: function
doc:
<comment>Description:</comment>
  Closes LOB descriptor
  
  Closes descriptor of LOB or FILE. This function should be used only with .

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::eof
type: function
doc:
<comment>Description:</comment>
  Tests for end-of-file on a large object's descriptor
  
  Tells whether the internal pointer of large object is at the end of LOB.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if internal pointer of large object is at the end of LOB. Otherwise returns
        <info>false</info>.

<comment>See Also:</comment>
   * 


id: OCILob::erase
type: function
doc:
<comment>Description:</comment>
  Erases a specified portion of the internal LOB data
  
  Erases a specified portion of the internal LOB data starting at a specified <strong>$offset</strong>. If called
  without parameters, it erases all LOB data.
  
  For BLOBs, erasing means that the existing LOB value is overwritten with zero-bytes. For CLOBs,
  the existing LOB value is overwritten with spaces.

<comment>Param:</comment>
  <info>int|null</info>  <strong>$offset</strong>  
  <info>int|null</info>  <strong>$length</strong>  

<comment>Return:</comment>
  <info>int|false</info>  Returns the actual number of characters/bytes erased  ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::export
type: function
doc:
<comment>Description:</comment>
  Exports LOB's contents to a file
  
  Exports LOB contents to a file.

<comment>Param:</comment>
  <info>string</info>    <strong>$filename</strong>  Path to the file.
  <info>int|null</info>  <strong>$offset</strong>    Indicates from where to start exporting.
  <info>int|null</info>  <strong>$length</strong>    Indicates the length of data to be exported.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::flush
type: function
doc:
<comment>Description:</comment>
  Flushes/writes buffer of the LOB to the server
  
  <strong>OCILob::flush()</strong> actually writes data to the server.

<comment>Param:</comment>
  <info>int</info>  <strong>$flag</strong>  By default, resources are not freed, but using flag  <info>OCI_LOB_BUFFER_FREE</info> you can do it
              explicitly. Be sure you know what you're doing - next read/write operation to the same
              part of LOB will involve a round-trip to the server and initialize new buffer
              resources. It is recommended to use  <info>OCI_LOB_BUFFER_FREE</info> flag only when you are not
              going to work with the LOB anymore.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.
        
        Returns <info>false</info> if buffering was not enabled or an error occurred.

<comment>See Also:</comment>
   * 
   * 


id: OCILob::free
type: function
doc:
<comment>Description:</comment>
  Frees resources associated with the LOB descriptor
  
  Frees resources associated with the descriptor, previously allocated with  <strong>oci_new_descriptor()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: OCILob::getBuffering
type: function
doc:
<comment>Description:</comment>
  Returns current state of buffering for the large object
  
  Tells whether the buffering for the large object is on or off.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>false</info> if buffering for the large object is off and <info>true</info> if buffering is used.

<comment>See Also:</comment>
   * 


id: OCILob::import
type: function
doc:
<comment>Description:</comment>
  Imports file data to the LOB
  
  Writes data from the <strong>$filename</strong> in to the current position of large object.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Path to the file.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 


id: OCILob::load
type: function
doc:
<comment>Description:</comment>
  Returns large object's contents
  
  Returns large object's contents. As script execution is terminated when the memory_limit is
  reached, ensure that the LOB does not exceed this limit. In most cases it's recommended to use
  instead.

<comment>Return:</comment>
  <info>string|false</info>  Returns the contents of the object, or <info>false</info> on errors.

<comment>See Also:</comment>
   * 


id: OCILob::read
type: function
doc:
<comment>Description:</comment>
  Reads part of the large object
  
  Reads <strong>$length</strong> of bytes (BLOB) or characters (CLOB) from the current position of LOB's internal
  pointer.
  
  Reading stops when <strong>$length</strong> of bytes have been read for a BLOB, when <strong>$length</strong> of characters have
  been read for a CLOB, or when the end of the large object is reached. Internal pointer of the
  large object will be shifted on the amount of bytes/characters read.

<comment>Param:</comment>
  <info>int</info>  <strong>$length</strong>  The length of data to read, in bytes (BLOB) or characters (CLOB). Large values will
                be rounded down to 1 MB.

<comment>Return:</comment>
  <info>string|false</info>  Returns the contents as a string,  ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 


id: OCILob::rewind
type: function
doc:
<comment>Description:</comment>
  Moves the internal pointer to the beginning of the large object
  
  Sets the internal pointer to the beginning of the large object.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 


id: OCILob::save
type: function
doc:
<comment>Description:</comment>
  Saves data to the large object
  
  Saves <strong>$data</strong> to the large object.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>    The data to be saved.
  <info>int</info>     <strong>$offset</strong>  Can be used to indicate offset from the beginning of the large object.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 


id: OCILob::saveFile
type: function
doc:
<comment>Description:</comment>
  Sinônimo de OCILob::import
  
  Esta função é um apelido para:   <strong>OCILob::import()</strong>.


id: OCILob::seek
type: function
doc:
<comment>Description:</comment>
  Sets the internal pointer of the large object
  
  Sets the internal pointer of the large object.

<comment>Param:</comment>
  <info>int</info>  <strong>$offset</strong>  Indicates the amount of bytes, on which internal pointer should be moved from the
                position, pointed by <strong>$whence</strong>.
  <info>int</info>  <strong>$whence</strong>  May be one of: <info>OCI_SEEK_SET</info> - sets the position equal to  <strong>$offset</strong> <info>OCI_SEEK_CUR</info> -
                adds <strong>$offset</strong>  bytes to the current position   <info>OCI_SEEK_END</info> - adds <strong>$offset</strong> bytes to
                the end of large object (use negative value to move to a position before the end of
                large object)

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * 
   * 


id: OCILob::setBuffering
type: function
doc:
<comment>Description:</comment>
  Changes current state of buffering for the large object
  
  Sets the buffering for the large object, depending on the value of the <strong>$mode</strong> parameter.
  
  Use of this function may provide performance improvements by buffering small reads and writes of
  LOBs by reducing the number of network round-trips and LOB versions.  <strong>OCILob::flush()</strong> should be
  used to flush buffers, when you have finished working with the large object.

<comment>Param:</comment>
  <info>bool</info>  <strong>$mode</strong>  <info>true</info> for on and <info>false</info> for off.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha. Repeated calls to this method
        with the same flag will return <info>true</info>.

<comment>See Also:</comment>
   * 


id: OCILob::size
type: function
doc:
<comment>Description:</comment>
  Returns size of large object
  
  Gets the size of the large object.

<comment>Return:</comment>
  <info>int|false</info>  Returns length of large object value  ou <info>false</info> em caso de falha. Empty objects have
             zero length.


id: OCILob::tell
type: function
doc:
<comment>Description:</comment>
  Returns the current position of internal pointer of large object
  
  Gets the current position of a LOB's internal pointer.

<comment>Return:</comment>
  <info>int|false</info>  Returns current position of a LOB's internal pointer or <info>false</info> if an error occurred.

<comment>See Also:</comment>
   * 
   * 
   * 


id: OCILob::truncate
type: function
doc:
<comment>Description:</comment>
  Truncates large object
  
  Truncates the LOB.

<comment>Param:</comment>
  <info>int</info>  <strong>$length</strong>  If provided, this method will truncate the LOB to <strong>$length</strong> bytes. Otherwise, it will
                completely purge the LOB.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::write
type: function
doc:
<comment>Description:</comment>
  Writes data to the large object
  
  Writes data from the parameter <strong>$data</strong> into the current position of LOB's internal pointer.

<comment>Param:</comment>
  <info>string</info>    <strong>$data</strong>    The data to write in the LOB.
  <info>int|null</info>  <strong>$length</strong>  If this parameter is an integer, writing will stop after <strong>$length</strong> bytes have
                     been written or the end of <strong>$data</strong> is reached, whichever comes first.

<comment>Return:</comment>
  <info>int|false</info>  Returns the number of bytes written  ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::writeTemporary
type: function
doc:
<comment>Description:</comment>
  Escreve um large object temporário
  
  Cria um large object temporário e escreve <strong>$data</strong> nele.
  
  Você deve usar  quando tiver terminado com esse objeto.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Os dados a escrever.
  <info>int</info>     <strong>$type</strong>  Pode ser um dos seguintes: <info>OCI_TEMP_BLOB</info> é utilizado para cirar BLOBs temporários
                 <info>OCI_TEMP_CLOB</info> é utilizado para criar CLOBs temporários

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 


id: OCILob::writeToFile
type: function
doc:
<comment>Description:</comment>
  Sinônimo de OCILob::export
  
  Esta função é um apelido para:  <strong>OCILob::export()</strong>.


id: OCI_ASSOC
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_fetch_all()</strong> e <strong>oci_fetch_array()</strong> para obter os resultados em um array
  associativo.


id: OCI_BOTH
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_fetch_all()</strong> e <strong>oci_fetch_array()</strong> para obter os resultados em um array com índices
  associativos e numéricos.


id: OCI_B_BFILE
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) BFILEs.


id: OCI_B_BIN
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> para associar (bind) valores RAW.


id: OCI_B_BLOB
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) BLOBs.


id: OCI_B_BOL
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> para associar (bind) uma variável PL/SQL booleana.


id: OCI_B_CFILEE
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) CFILEs.


id: OCI_B_CLOB
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) CLOBs.


id: OCI_B_CURSOR
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) cursores, anteriormente alocados com
  <strong>oci_new_descriptor()</strong>.


id: OCI_B_INT
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_array_by_name()</strong> para associar (bind) arrays de INTEGER.


id: OCI_B_NTY
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) tipos nomeados.


id: OCI_B_NUM
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_array_by_name()</strong> para associar (bind) arrays de NUMBER.


id: OCI_B_ROWID
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_bind_by_name()</strong> quando associando (binding) ROWIDs.


id: OCI_COMMIT_ON_SUCCESS
type: constant
doc:
<comment>Description:</comment>
  Modo de execução de instruções com <strong>oci_execute()</strong>. Automaticamente efetiva as alterações (commit)
  caso a instrução execute.


id: OCI_CRED_EXT
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_connect()</strong> para ativar a autenticação Oracles' External ou do sistema
  operacional.


id: OCI_DESCRIBE_ONLY
type: constant
doc:
<comment>Description:</comment>
  Modo de execução de instruções para <strong>oci_execute()</strong>. Utilize esse modo se deseja meta dados como os
  nomes de colunas mas não deseja trazer as linhas da consulta.


id: OCI_DTYPE_FILE
type: constant
doc:
<comment>Description:</comment>
  Esse indicador faz <strong>oci_new_descriptor()</strong> inicializar um descritor FILE.


id: OCI_DTYPE_LOB
type: constant
doc:
<comment>Description:</comment>
  Esse indicador faz <strong>oci_new_descriptor()</strong> inicializar um descritor LOB.


id: OCI_DTYPE_ROWID
type: constant
doc:
<comment>Description:</comment>
  Esse indicador faz <strong>oci_new_descriptor()</strong> inicializar um descritor ROWID.


id: OCI_EXACT_FETCH
type: constant
doc:
<comment>Description:</comment>
  Obsoleto. Modo de execução de instruções. Utilizado quando a aplicação conhece previamente quantas
  linhas serão lidas. Este modo desliga o prefetching a partir do Oracle release 8. O cursor é
  cancelado depois da quantidade deseja de linhas é lida o que pode resultar em uma menor quantidade
  de recursos consumidos no lado do servidor.


id: OCI_NO_AUTO_COMMIT
type: constant
doc:
<comment>Description:</comment>
  Modo de execução de instruções para <strong>oci_execute()</strong>. A instrução não é efetivada automaticamente
  nesse modo (modo sem commit). Para a legibilidade de em código, utilize esse valor ao invés da
  constante obsoleta <info>OCI_DEFAULT</info>.


id: OCI_NUM
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_fetch_all()</strong> e <strong>oci_fetch_array()</strong> para obter os resultados em um array enumerado.


id: OCI_RETURN_LOBS
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_fetch_array()</strong> para obter o dado do LOB ao invés do descritor.


id: OCI_RETURN_NULLS
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_fetch_array()</strong> para obter elementos vazios de array se o item da linha for <info>null</info>.


id: OCI_SYSDBA
type: constant
doc:
<comment>Description:</comment>
  Utilizad com <strong>oci_connect()</strong> para conectar com o privilégio SYSDBA. A configuração php.ini
  oci8.privileged_connect precisa estar ativada.


id: OCI_SYSOPER
type: constant
doc:
<comment>Description:</comment>
  Utilizado com <strong>oci_connect()</strong> para conectar com o privilégio SYSOPER. A configuração php.ini
  oci8.privileged_connect precisa estar ativada.


id: OCI_TEMP_BLOB
type: constant
doc:
<comment>Description:</comment>
  Utilizada com  para indicar que um BLOB temporário deve ser criado.


id: OCI_TEMP_CLOB
type: constant
doc:
<comment>Description:</comment>
  Utilizad com  para indicar que um CLOB temporário deve ser criado.


id: OPENSSL_ALGO_MD2
type: constant
doc:
<comment>Description:</comment>
  This constant is only available  if PHP is compiled with MD2 support. This requires passing in the
  -DHAVE_OPENSSL_MD2_H CFLAG when compiling PHP, and enable-md2 when  compiling OpenSSL 1.0.0+.


id: OPENSSL_ALGO_SHA1
type: constant
doc:
<comment>Description:</comment>
  Used as default algorithm by <strong>openssl_sign()</strong> and <strong>openssl_verify()</strong>.


id: OPENSSL_CMS_BINARY
type: constant
doc:
<comment>Description:</comment>
  Normally the input message is converted to "canonical" format which is effectively using <return>CR</return> and <return>LF</return>
  as end of line: as required by the CMS specification.  When this option is present, no translation
  occurs. This is useful when handling binary data which may not be in CMS format.


id: OPENSSL_CMS_DETACHED
type: constant
doc:
<comment>Description:</comment>
  When signing a message, use cleartext signing with the MIME type <return>"multipart/signed"</return>. This is the
  default if you do not specify any <strong>$flags</strong> to <strong>openssl_cms_sign()</strong>. If you turn this option off, the
  message will be signed using opaque signing, which is more resistant to translation by mail relays
  but cannot be read by mail agents that do not support S/MIME.


id: OPENSSL_CMS_NOATTR
type: constant
doc:
<comment>Description:</comment>
  Normally when a message is signed, a set of attributes are included which include the signing time
  and the supported symmetric algorithms.  With this option they are not included.


id: OPENSSL_CMS_NOCERTS
type: constant
doc:
<comment>Description:</comment>
  When signing a message the signer's certificate is normally included - with this option it is
  excluded.  This will reduce the size of the signed message but the verifier must have a copy of
  the signers certificate available locally (passed using the <strong>$untrusted_certificates_filename</strong> to
  <strong>openssl_cms_verify()</strong> for example).


id: OPENSSL_CMS_NOINTERN
type: constant
doc:
<comment>Description:</comment>
  When verifying a message, certificates (if any) included in the message are normally searched for
  the signing certificate. With this option only the certificates specified in the
  <strong>$untrusted_certificates_filename</strong> parameter of <strong>openssl_cms_verify()</strong> are used.  The supplied
  certificates can still be used as untrusted CAs however.


id: OPENSSL_CMS_OLDMIMETYPE
type: constant
doc:
<comment>Description:</comment>
  Available as of PHP 8.3.0. Sets the content-type to <return>application/x-pkcs7-mime</return> instead of
  <return>application/pkcs7-mime</return> to encrypt a message.


id: OPENSSL_CMS_TEXT
type: constant
doc:
<comment>Description:</comment>
  Adds text/plain content type headers to encrypted/signed message. If decrypting or verifying, it
  strips those headers from the output - if the decrypted or verified message is not of MIME type
  text/plain then an error will occur.


id: OPENSSL_KEYTYPE_EC
type: constant
doc:
<comment>Description:</comment>
  This constant is only available when PHP is compiled with OpenSSL 0.9.8+.


id: OPENSSL_RAW_DATA
type: constant
doc:
<comment>Description:</comment>
  If <info>OPENSSL_RAW_DATA</info> is set in the <strong>openssl_encrypt()</strong> or <strong>openssl_decrypt()</strong>, the returned data is
  returned as-is. When it is not specified, Base64 encoded data is returned to the caller.


id: OPENSSL_ZERO_PADDING
type: constant
doc:
<comment>Description:</comment>
  By default encryption operations are padded using standard block padding and the padding is
  checked and removed when decrypting. If <info>OPENSSL_ZERO_PADDING</info> is set in the <strong>openssl_encrypt()</strong> or
  <strong>openssl_decrypt()</strong> <strong>$options</strong> then no padding is performed, the total amount of data encrypted or
  decrypted must then be a multiple of the block size or an error will occur.


id: OP_HALFOPEN
type: constant
doc:
<comment>Description:</comment>
  For IMAP and NNTP names, open a connection but don't open a mailbox.


id: OpenSSLAsymmetricKey
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces <return>OpenSSL key</return> resources as of PHP 8.0.0.


id: OpenSSLCertificate
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces <return>OpenSSL X.509</return> resources as of PHP 8.0.0.


id: OpenSSLCertificateSigningRequest
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces <return>OpenSSL X.509 CSR</return> resources as of PHP 8.0.0.


id: OuterIterator
type: class
doc:
<comment>Description:</comment>
  Classes implementing <class>OuterIterator</class> can be used to iterate over iterators.


id: OuterIterator::getInnerIterator
type: function
doc:
<comment>Description:</comment>
  Returns the inner iterator for the current entry
  
  Returns the inner iterator for the current iterator entry.

<comment>Return:</comment>
  <info>Iterator|null</info>  Returns the inner iterator for the current entry if it exists, or <info>null</info> otherwise.


id: PASSWORD_ARGON2I
type: constant
doc:
<comment>Description:</comment>
  <info>PASSWORD_ARGON2I</info> é utilizado para criar novos hashes utilizando o algoritmo Argon2i.
  
  Opções:
  
  <return>memory_cost</return> (<info>int</info>) - Memória máxima (em bytes) que poderá ser utilizada para calcular o hash
  Argon2. Padrão: <info>PASSWORD_ARGON2_DEFAULT_MEMORY_COST</info>.
  
  <return>time_cost</return> (<info>int</info>) - Tempo máximo que poderá demorar para calcula o hash Argon2. Padrão:
  <info>PASSWORD_ARGON2_DEFAULT_TIME_COST</info>.
  
  <return>threads</return> (<info>int</info>) - Número de threads utilizada para calcular o hash Argon2. Padrão:
  <info>PASSWORD_ARGON2_DEFAULT_THREADS</info>. Somente disponível com libargon2, mas não na implementação
  libsodium.
  
  Disponível desde o PHP 7.2.0.


id: PASSWORD_ARGON2ID
type: constant
doc:
<comment>Description:</comment>
  <info>PASSWORD_ARGON2ID</info> é utilizado para criar novos hashes de senha com o algoritmo Argon2id. Ele
  suporta as mesmas opções de <info>PASSWORD_ARGON2I</info>.
  
  Disponível desde o PHP 7.3.0.


id: PASSWORD_ARGON2_DEFAULT_MEMORY_COST
type: constant
doc:
<comment>Description:</comment>
  Quantidade de memória padrão, em bytes, que será utilizado ao tentar calcular um hash.
  
  Disponível desde o PHP 7.2.0.


id: PASSWORD_ARGON2_DEFAULT_THREADS
type: constant
doc:
<comment>Description:</comment>
  Número de threads padrão qual a Argon2lib irá utilizar. Não disponível na implementação libsodium.
  
  Disponível desde o PHP 7.2.0.


id: PASSWORD_ARGON2_DEFAULT_TIME_COST
type: constant
doc:
<comment>Description:</comment>
  Quantidade de tempo padrão que será gasto tentando calcular um hash.
  
  Disponível desde o PHP 7.2.0.


id: PASSWORD_BCRYPT
type: constant
doc:
<comment>Description:</comment>
  <info>PASSWORD_BCRYPT</info> é usada para criar novos password hashes usando o algoritmo <info>CRYPT_BLOWFISH</info>.
  
  Sempre terminará com um hash usando o formato "$2y$" de encriptação, com 60 caracteres.
  
  Opções suportadas:
  
  <return>salt</return> (<info>string</info>)  - para fornecer manualmente um salt a ser usado quando estiver sendo feito o hash
  do password. Perceba que isso irá sobrepor e evitar que um salt seja gerado automaticamente.
  
  Se omitido, um salt aleatório será gerado pela função <strong>password_hash()</strong> para cada password sofrendo
  hash. Esse é o modo de operação desejado e desde o PHP 7.0.0 a opção salt foi descontinuada.
  
  <return>cost</return> (<info>int</info>) - indica o custo de algoritmo que deve ser usado. Exemplos desses valores podem ser
  encontrados na página da função <strong>crypt()</strong>.
  
  Se omitido, um valor padrão <return>10</return> será usado. Este é um bom patamar de custo, mas pode-se considerar
  aumentar esse valor dependendo do hardware.


id: PASSWORD_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  O algoritmo padrão a ser usado para fazer o hash se nenhum algoritmo for fornecido. Ele pode mudar
  com as novas versões do PHP quando novos e mais fortes algoritmos de hash forem suportados.
  
  É importante notar que ao longo do tempo essa constante pode (e provavelmente vai) mudar. Assim
  sendo, você deve estar ciente que o comprimento do hash resultante pode mudar. Portanto, se usar
  <info>PASSWORD_DEFAULT</info> deve-se armazenar o hash resultante de um modo que possa guardar mais do que 60
  caracteres (255 é o comprimento recomendado).
  
  Valores para esta constante:
  
  PHP 5.5.0 - <info>PASSWORD_BCRYPT</info>


id: PCRE_VERSION
type: constant
doc:
<comment>Description:</comment>
  Versão da PCRE e data de liberação (e.g. "<return>7.0 18-Dec-2006</return>").
  
  5.2.4


id: PDO::ATTR_AUTOCOMMIT
type: constant
doc:
<comment>Description:</comment>
  If this value is <info>false</info>, PDO attempts to disable autocommit so that the connection begins a
  transaction.


id: PDO::ATTR_CASE
type: constant
doc:
<comment>Description:</comment>
  Force column names to a specific case specified by the <return>PDO::CASE_*</return> constants.


id: PDO::ATTR_CLIENT_VERSION
type: constant
doc:
<comment>Description:</comment>
  This is a read only attribute; it will return information about the version of the client
  libraries that the PDO driver is using.


id: PDO::ATTR_CURSOR
type: constant
doc:
<comment>Description:</comment>
  Selects the cursor type.  PDO currently supports either <info>PDO::CURSOR_FWDONLY</info> and
  <info>PDO::CURSOR_SCROLL</info>. Stick with <info>PDO::CURSOR_FWDONLY</info> unless you know that you need a scrollable
  cursor.


id: PDO::ATTR_CURSOR_NAME
type: constant
doc:
<comment>Description:</comment>
  Get or set the name to use for a cursor.  Most useful when using scrollable cursors and positioned
  updates.


id: PDO::ATTR_DEFAULT_STR_PARAM
type: constant
doc:
<comment>Description:</comment>
  Sets the default string parameter type, this can be one of <info>PDO::PARAM_STR_NATL</info>  and
  <info>PDO::PARAM_STR_CHAR</info>.
  
  Available since PHP 7.2.0.


id: PDO::ATTR_DRIVER_NAME
type: constant
doc:
<comment>Description:</comment>
  Returns the name of the driver.
  
  using <info>PDO::ATTR_DRIVER_NAME</info>getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') { echo "Running on
  mysql; doing something mysql specific here\n";
  }
  ?>
  ]]>


id: PDO::ATTR_ERRMODE
type: constant
doc:
<comment>Description:</comment>
  See the Errors and error handling section for more information about this attribute.


id: PDO::ATTR_FETCH_CATALOG_NAMES
type: constant
doc:
<comment>Description:</comment>
  Prepend the containing catalog name to each column name returned in the result set. The catalog
  name and column name are separated by a decimal (.) character.  Support of this attribute is at
  the driver level; it may not be supported by your driver.


id: PDO::ATTR_FETCH_TABLE_NAMES
type: constant
doc:
<comment>Description:</comment>
  Prepend the containing table name to each column name returned in the result set. The table name
  and column name are separated by a decimal (.) character. Support of this attribute is at the
  driver level; it may not be supported by your driver.


id: PDO::ATTR_PERSISTENT
type: constant
doc:
<comment>Description:</comment>
  Request a persistent connection, rather than creating a new connection. See Connections and
  Connection management for more information on this attribute.


id: PDO::ATTR_PREFETCH
type: constant
doc:
<comment>Description:</comment>
  Setting the prefetch size allows you to balance speed against memory usage for your application.
  Not all database/driver combinations support setting of the prefetch size.  A larger prefetch size
  results in increased performance at the cost of higher memory usage.


id: PDO::ATTR_SERVER_INFO
type: constant
doc:
<comment>Description:</comment>
  This is a read only attribute; it will return some meta information about the database server to
  which PDO is connected.


id: PDO::ATTR_SERVER_VERSION
type: constant
doc:
<comment>Description:</comment>
  This is a read only attribute; it will return information about the version of the database server
  to which PDO is connected.


id: PDO::ATTR_TIMEOUT
type: constant
doc:
<comment>Description:</comment>
  Sets the timeout value in seconds for communications with the database.


id: PDO::CURSOR_FWDONLY
type: constant
doc:
<comment>Description:</comment>
  Create a <class>PDOStatement</class> object with a forward-only cursor.  This is the default cursor choice, as it
  is the fastest and most common data access pattern in PHP.


id: PDO::CURSOR_SCROLL
type: constant
doc:
<comment>Description:</comment>
  Create a <class>PDOStatement</class> object with a scrollable cursor. Pass the <return>PDO::FETCH_ORI_*</return> constants to
  control the rows fetched from the result set.


id: PDO::ERRMODE_EXCEPTION
type: constant
doc:
<comment>Description:</comment>
  Throw a <class>PDOException</class> if an error occurs. See Errors and error handling for more information about
  this attribute.


id: PDO::ERRMODE_SILENT
type: constant
doc:
<comment>Description:</comment>
  Do not raise an error or exception if an error occurs. The developer is expected to explicitly
  check for errors.  This is the default mode. See Errors and error handling for more information
  about this attribute.


id: PDO::ERRMODE_WARNING
type: constant
doc:
<comment>Description:</comment>
  Issue a PHP <info>E_WARNING</info> message if an error occurs. See Errors and error handling for more
  information about this attribute.


id: PDO::ERR_NONE
type: constant
doc:
<comment>Description:</comment>
  Corresponds to SQLSTATE '00000', meaning that the SQL statement was successfully issued with no
  errors or warnings.  This constant is for your convenience when checking PDO::errorCode or
  PDOStatement::errorCode to determine if an error occurred.  You will usually know if this is the
  case by examining the return code from the method that raised the error condition anyway.


id: PDO::FETCH_ASSOC
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an array indexed by column name as
  returned in the corresponding result set. If the result set contains multiple columns with the
  same name, <info>PDO::FETCH_ASSOC</info> returns only a single value per column name.


id: PDO::FETCH_BOTH
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an array indexed by both column name and
  number as returned in the corresponding result set, starting at column 0.


id: PDO::FETCH_BOUND
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return TRUE and assign the values of the columns in the
  result set to the PHP variables to which they were bound with the PDOStatement::bindParam or
  PDOStatement::bindColumn methods.


id: PDO::FETCH_CLASS
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return a new instance of the requested class, mapping the
  columns to named properties in the class.
  
  The magic __set method is called if the property doesn't exist in the requested class


id: PDO::FETCH_COLUMN
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return only a single requested column from the next row in
  the result set.


id: PDO::FETCH_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  Specifies that the default fetch mode shall be used. Available as of PHP 8.0.7.


id: PDO::FETCH_FUNC
type: constant
doc:
<comment>Description:</comment>
  Allows completely customize the way data is treated on the fly (only  valid inside
  PDOStatement::fetchAll).


id: PDO::FETCH_GROUP
type: constant
doc:
<comment>Description:</comment>
  Group return by values. Usually combined with <info>PDO::FETCH_COLUMN</info> or  <info>PDO::FETCH_KEY_PAIR</info>.


id: PDO::FETCH_INTO
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall update an existing instance of the requested class, mapping
  the columns to named properties in the class.


id: PDO::FETCH_KEY_PAIR
type: constant
doc:
<comment>Description:</comment>
  Fetch a two-column result into an array where the first column is a key and the second column is
  the value.


id: PDO::FETCH_LAZY
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an object with variable names that
  correspond to the column names returned in the result set. <info>PDO::FETCH_LAZY</info> creates the object
  variable names as they are accessed. Not valid inside PDOStatement::fetchAll.


id: PDO::FETCH_NAMED
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an array indexed by column name as
  returned in the corresponding result set. If the result set contains multiple columns with the
  same name, <info>PDO::FETCH_NAMED</info> returns an array of values per column name.


id: PDO::FETCH_NUM
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an array indexed by column number as
  returned in the corresponding result set, starting at column 0.


id: PDO::FETCH_OBJ
type: constant
doc:
<comment>Description:</comment>
  Specifies that the fetch method shall return each row as an object with property names that
  correspond to the column names returned in the result set.


id: PDO::FETCH_ORI_ABS
type: constant
doc:
<comment>Description:</comment>
  Fetch the requested row by row number from the result set. Valid only for scrollable cursors.


id: PDO::FETCH_ORI_FIRST
type: constant
doc:
<comment>Description:</comment>
  Fetch the first row in the result set. Valid only for scrollable cursors.


id: PDO::FETCH_ORI_LAST
type: constant
doc:
<comment>Description:</comment>
  Fetch the last row in the result set. Valid only for scrollable cursors.


id: PDO::FETCH_ORI_NEXT
type: constant
doc:
<comment>Description:</comment>
  Fetch the next row in the result set. Valid only for scrollable cursors.


id: PDO::FETCH_ORI_PRIOR
type: constant
doc:
<comment>Description:</comment>
  Fetch the previous row in the result set. Valid only for scrollable cursors.


id: PDO::FETCH_ORI_REL
type: constant
doc:
<comment>Description:</comment>
  Fetch the requested row by relative position from the current position of the cursor in the result
  set. Valid only for scrollable cursors.


id: PDO::FETCH_SERIALIZE
type: constant
doc:
<comment>Description:</comment>
  As <info>PDO::FETCH_INTO</info> but object is provided as a serialized string. The class constructor is never
  called if this flag is set. Deprecated as of PHP 8.1.0.


id: PDO::MYSQL_ATTR_FOUND_ROWS
type: constant
doc:
<comment>Description:</comment>
  Retorna a quantidade de linhas encontradas (matched), e não a quantidade de linhas modificadas.


id: PDO::MYSQL_ATTR_IGNORE_SPACE
type: constant
doc:
<comment>Description:</comment>
  Permite espaços depois do nome das funções. Torna o nome de todas as funções palavras reservadas.


id: PDO::MYSQL_ATTR_INIT_COMMAND
type: constant
doc:
<comment>Description:</comment>
  Comando para executar ao se conectar no servidor MySQL. Irá ser executado novamente ao reconectar.
  
  Note que essa constante só pode ser usada no array <strong>$driver_options</strong> ao construir um novo
  manipulador de banco de dados.


id: PDO::MYSQL_ATTR_LOCAL_INFILE
type: constant
doc:
<comment>Description:</comment>
  Habilita <return>LOAD LOCAL INFILE</return>.
  
  Note que essa constante só pode ser usada no array <strong>$driver_options</strong> ao construir um novo
  manipulador de banco de dados.


id: PDO::MYSQL_ATTR_LOCAL_INFILE_DIRECTORY
type: constant
doc:
<comment>Description:</comment>
  Permite restringir o carregamento através de LOCAL DATA a arquivos localizados neste diretório
  designado. Disponível a partir do PHP 8.1.0.
  
  Note que esta constante só pode ser usada no array <strong>$driver_options</strong> ao construir um novo
  manipulador de banco de dados.


id: PDO::MYSQL_ATTR_MAX_BUFFER_SIZE
type: constant
doc:
<comment>Description:</comment>
  Tamanho máximo do buffer. O padrão é 1 MiB. Essa constante não é suportada quando utilizado
  mysqlnd.


id: PDO::MYSQL_ATTR_MULTI_STATEMENTS
type: constant
doc:
<comment>Description:</comment>
  Desabilita a execução de consultas múltiplas nas funções <strong>PDO::prepare()</strong> e <strong>PDO::query()</strong> quando
  definido como <info>false</info>.
  
  Note que essa constante só pode ser usada no array <strong>$driver_options</strong> ao construir um novo
  manipulador de banco de dados.


id: PDO::MYSQL_ATTR_READ_DEFAULT_FILE
type: constant
doc:
<comment>Description:</comment>
  Lê configurações do arquivo definido nas opções ao invés do arquivo my.cnf. Essa opção não está
  disponível se mysqlnd for usado, porque mysqlnd não lê os arquivos de configurações do mysql.


id: PDO::MYSQL_ATTR_READ_DEFAULT_GROUP
type: constant
doc:
<comment>Description:</comment>
  Lê configurações do grupo nomeado em my.cnf ou no arquivo especificado com
  <info>MYSQL_READ_DEFAULT_FILE</info>. Essa opção não está disponível se mysqlnd for usado, porque mysqlnd não
  lê os arquivos de configurações do mysql.


id: PDO::MYSQL_ATTR_SSL_CAPATH
type: constant
doc:
<comment>Description:</comment>
  Caminho para o diretório que contém os certificados SSL confiáveis da autoridade certificadora
  (CA), armazenados no formato PEM.


id: PDO::MYSQL_ATTR_SSL_CIPHER
type: constant
doc:
<comment>Description:</comment>
  Uma lista de um ou mais "ciphers" admissíveis para usar na encriptação SSL, em um formato
  compreendido pelo OpenSSL. For example: <return>DHE-RSA-AES256-SHA:AES128-SHA</return>


id: PDO::MYSQL_ATTR_SSL_VERIFY_SERVER_CERT
type: constant
doc:
<comment>Description:</comment>
  Fornece uma maneira de desabilitar verificação do certificado SSL do servidor.
  
  Isso existe a partir do PHP  7.0.18 and PHP 7.1.4.


id: PDO::MYSQL_ATTR_USE_BUFFERED_QUERY
type: constant
doc:
<comment>Description:</comment>
  Por padrão todas as instruções são executadas com buffer ativo. Se este atributo for definido para
  <info>false</info> em um objeto <class>PDO</class>, o driver MySQL usará o modo sem buffer.
  
  Configurando o mode sem buffer no MySQLsetAttribute(PDO::MYSQL_ATTR_USE_BUFFERED_QUERY, false);
  
  $unbufferedResult = $pdo->query("SELECT Name FROM City");
  foreach ($unbufferedResult as $row) { echo $row['Name'] . PHP_EOL;
  }
  ?>
  ]]>


id: PDO::OCI_ATTR_ACTION
type: constant
doc:
<comment>Description:</comment>
  Provides a way to specify the action on the database session.
  
  Isso existe a partir do PHP  7.2.16 and 7.3.3


id: PDO::OCI_ATTR_CLIENT_IDENTIFIER
type: constant
doc:
<comment>Description:</comment>
  Provides a way to specify the client identifier on the database session.
  
  Isso existe a partir do PHP  7.2.16 and 7.3.3


id: PDO::OCI_ATTR_CLIENT_INFO
type: constant
doc:
<comment>Description:</comment>
  Provides a way to specify the client info on the database session.
  
  Isso existe a partir do PHP  7.2.16 and 7.3.3


id: PDO::OCI_ATTR_MODULE
type: constant
doc:
<comment>Description:</comment>
  Provides a way to specify the module on the database session.
  
  Isso existe a partir do PHP  7.2.16 and 7.3.3


id: PDO::ODBC_ATTR_ASSUME_UTF8
type: constant
doc:
<comment>Description:</comment>
  Windows only. If <info>true</info>, UTF-16 encoded character data (<return>CHAR</return>, <return>VARCHAR</return> and <return>LONGVARCHAR</return>) is converted
  to UTF-8 when reading from or writing data to the database. If <info>false</info> (the default), character
  encoding conversion may be done by the driver.


id: PDO::ODBC_ATTR_USE_CURSOR_LIBRARY
type: constant
doc:
<comment>Description:</comment>
  This option controls whether the ODBC cursor library is used. The ODBC cursor library supports
  some advanced ODBC features (e.g. block scrollable cursors), which may not be implemented by the
  driver. The following values are supported: <info>PDO::ODBC_SQL_USE_IF_NEEDED</info> (the default): use the
  ODBC cursor library when needed. <info>PDO::ODBC_SQL_USE_DRIVER</info>: never use the ODBC cursor library.
  <info>PDO::ODBC_SQL_USE_ODBC</info>: always use the ODBC cursor library.
  
  <info>PDO::ODBC_SQL_USE_IF_NEEDED</info> (the default): use the ODBC cursor library when needed.
  
  <info>PDO::ODBC_SQL_USE_DRIVER</info>: never use the ODBC cursor library.
  
  <info>PDO::ODBC_SQL_USE_ODBC</info>: always use the ODBC cursor library.


id: PDO::PARAM_EVT_FETCH_POST
type: constant
doc:
<comment>Description:</comment>
  Event triggered subsequent to fetching a result from a resultset.


id: PDO::PARAM_EVT_NORMALIZE
type: constant
doc:
<comment>Description:</comment>
  Event triggered during bound parameter registration allowing the driver to normalize the parameter
  name.


id: PDO::PARAM_INPUT_OUTPUT
type: constant
doc:
<comment>Description:</comment>
  Specifies that the parameter is an INOUT parameter for a stored procedure. You must bitwise-OR
  this value with an explicit PDO::PARAM_* data type.


id: PDO::PARAM_STMT
type: constant
doc:
<comment>Description:</comment>
  Represents a recordset type.  Not currently supported by any drivers.


id: PDO::PARAM_STR_CHAR
type: constant
doc:
<comment>Description:</comment>
  Flag to denote a string uses the regular character set.
  
  Available since PHP 7.2.0


id: PDO::PARAM_STR_NATL
type: constant
doc:
<comment>Description:</comment>
  Flag to denote a string uses the national character set.
  
  Available since PHP 7.2.0


id: PDO::PGSQL_ATTR_DISABLE_PREPARES
type: constant
doc:
<comment>Description:</comment>
  Send the query and the parameters to the server together in a single call, avoiding the need to
  create a named prepared statement separately. If the query is only going to be executed once this
  can reduce latency by avoiding an unnecessary server round-trip.


id: PDO::SQLITE_DETERMINISTIC
type: constant
doc:
<comment>Description:</comment>
  Specifies that a function created with PDO::sqliteCreateFunction is deterministic, i.e. it always
  returns the same result given the same inputs within a single SQL statement. (Available as of PHP
  7.1.4.)


id: PDO::SQLSRV_ATTR_DIRECT_QUERY
type: constant
doc:
<comment>Description:</comment>
  Indicates that a query should be executed directly, without being prepared.  This constant can be
  passed to PDO::setAttribute, and PDO::prepare. For more  information, see  Direct and Prepared
  Statement Execution.


id: PDO::SQLSRV_ATTR_QUERY_TIMEOUT
type: constant
doc:
<comment>Description:</comment>
  A non-negative integer representing the timeout period, in seconds. Zero (0)  is the default and
  means no timeout. This constant can be passed to  PDOStatement::setAttribute, PDO::setAttribute,
  and PDO::prepare.


id: PDO::SQLSRV_ENCODING_BINARY
type: constant
doc:
<comment>Description:</comment>
  Specifies that data is sent/retrieved as a raw byte stream to/from the server  without performing
  encoding or translation. This constant can be passed to  PDOStatement::setAttribute, PDO::prepare,
  PDOStatement::bindColumn, and  PDOStatement::bindParam.


id: PDO::SQLSRV_ENCODING_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  Specifies that data is sent/retrieved to/from the server according to  PDO::SQLSRV_ENCODING_SYSTEM
  if specified during connection. The connection's  encoding is used if specified in a prepare
  statement. This constant can be  passed to PDOStatement::setAttribute, PDO::setAttribute,
  PDO::prepare,  PDOStatement::bindColumn, and PDOStatement::bindParam.


id: PDO::SQLSRV_ENCODING_SYSTEM
type: constant
doc:
<comment>Description:</comment>
  Specifies that data is sent/retrieved to/from the server as 8-bit characters  as specified in the
  code page of the Windows locale that is set on the system.  Any multi-byte characters or
  characters that do not map into this code page  are substituted with a single byte question mark
  (?) character. This constant  can be passed to PDOStatement::setAttribute, PDO::setAttribute,
  PDO::prepare,  PDOStatement::bindColumn, and PDOStatement::bindParam.


id: PDO::SQLSRV_ENCODING_UTF8
type: constant
doc:
<comment>Description:</comment>
  Specifies that data is sent/retrieved to/from the server in UTF-8 encoding.  This is the default
  encoding. This constant can be passed to  PDOStatement::setAttribute, PDO::setAttribute,
  PDO::prepare,  PDOStatement::bindColumn, and PDOStatement::bindParam.


id: PDO::SQLSRV_TXN_READ_COMMITTED
type: constant
doc:
<comment>Description:</comment>
  This constant is an acceptable value for the SQLSRV DSN key TransactionIsolation.  This constant
  sets the transaction isolation level for the connection to  Read Committed.


id: PDO::SQLSRV_TXN_READ_UNCOMMITTED
type: constant
doc:
<comment>Description:</comment>
  This constant is an acceptable value for the SQLSRV DSN key TransactionIsolation.  This constant
  sets the transaction isolation level for the connection to  Read Uncommitted.


id: PDO::SQLSRV_TXN_REPEATABLE_READ
type: constant
doc:
<comment>Description:</comment>
  This constant is an acceptable value for the SQLSRV DSN key TransactionIsolation.  This constant
  sets the transaction isolation level for the connection to  Repeateable Read.


id: PDO::SQLSRV_TXN_SERIALIZABLE
type: constant
doc:
<comment>Description:</comment>
  This constant is an acceptable value for the SQLSRV DSN key TransactionIsolation.  This constant
  sets the transaction isolation level for the connection to  Serializable.


id: PDO::SQLSRV_TXN_SNAPSHOT
type: constant
doc:
<comment>Description:</comment>
  This constant is an acceptable value for the SQLSRV DSN key TransactionIsolation.  This constant
  sets the transaction isolation level for the connection to Snapshot.


id: PDO::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a PDO instance representing a connection to a database
    
  
  Creates a PDO instance to represent a connection to the requested database.

<comment>Param:</comment>
  <info>string</info>       <strong>$dsn</strong>       The Data Source Name, or DSN, contains the information required to connect
                          to the database.
                          
                          In general, a DSN consists of the PDO driver name, followed by a colon,
                          followed by the PDO driver-specific connection syntax. Further information
                          is available from the PDO driver-specific documentation.
                          
                          The <strong>$dsn</strong> parameter supports three different methods of specifying the
                          arguments required to create a database connection:
                          
                          Driver invocation<strong>$dsn</strong> contains the full DSN. URI invocation<strong>$dsn</strong> consists
                          of uri: followed by a URI that defines the location of a file containing
                          the DSN string. The URI can specify a local file or a remote URL.
                          uri:file:///path/to/dsnfileAliasing<strong>$dsn</strong> consists of a name  <strong>$name</strong> that
                          maps to  pdo.dsn.<strong>$name</strong> in php.ini defining the DSN string.  The alias must
                          be defined in php.ini, and not .htaccess or httpd.conf
                          
                          <strong>$dsn</strong> contains the full DSN.
                          
                          <strong>$dsn</strong> consists of uri: followed by a URI that defines the location of a
                          file containing the DSN string. The URI can specify a local file or a
                          remote URL.
                          
                          uri:file:///path/to/dsnfile
                          
                          <strong>$dsn</strong> consists of a name  <strong>$name</strong> that maps to  pdo.dsn.<strong>$name</strong> in php.ini
                          defining the DSN string.
                          
                          The alias must be defined in php.ini, and not .htaccess or httpd.conf
  <info>string</info>       <strong>$dsn</strong>       <strong>$dsn</strong> contains the full DSN.
  <info>string</info>       <strong>$dsn</strong>       <strong>$dsn</strong> consists of uri: followed by a URI that defines the location of a
                          file containing the DSN string. The URI can specify a local file or a
                          remote URL.
                          
                          uri:file:///path/to/dsnfile
  <info>string</info>       <strong>$dsn</strong>       <strong>$dsn</strong> consists of a name  <strong>$name</strong> that maps to  pdo.dsn.<strong>$name</strong> in php.ini
                          defining the DSN string.
                          
                          The alias must be defined in php.ini, and not .htaccess or httpd.conf
  <info>string|null</info>  <strong>$username</strong>  The user name for the DSN string. This parameter is optional for some PDO
                          drivers.
  <info>string|null</info>  <strong>$password</strong>  The password for the DSN string. This parameter is optional for some PDO
                          drivers.
  <info>array|null</info>   <strong>$options</strong>   A key=&gt;value array of driver-specific connection options.


id: PDO::beginTransaction
type: function
doc:
<comment>Description:</comment>
  Inicia uma transação
    
  
  Desativa o modo de envio automático. Enquanto o modo de envio automático estiver desativado,
  modificações feitas no banco de dados por meio da instância do objeto PDO não serão enviadas até
  que você finalize a transação chamando PDO::commit. Chamar PDO::rollBack reverterá todas as
  alterações no banco de dados e retornará a conexão para o modo de envio automático.
  
  Alguns bancos de dados, incluindo o MySQL, emitem automaticamente um COMMIT implícito quando uma
  instrução de linguagem de definição de banco de dados (DDL) como DROP TABLE ou CREATE TABLE é
  emitida em uma transação. O COMMIT implícito impedirá que você reverta quaisquer outras alterações
  dentro do limite da transação.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::commit
   * PDO::rollBack
   * Transações e envio automático


id: PDO::commit
type: function
doc:
<comment>Description:</comment>
  Envia uma transação
    
  
  Envia uma transação, retornando a conexão com o banco de dados para o modo de envio automático até
  que a próxima chamada a PDO::beginTransaction inicie uma nova transação.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::beginTransaction
   * PDO::rollBack
   * Transações e envio automático


id: PDO::cubrid_schema
type: function
doc:
<comment>Description:</comment>
  Get the requested schema information
  
  This function is used to get the requested schema information from database. You have to designate
  <strong>$table_name</strong>, if you want to get information on certain table, <strong>$col_name</strong>, if you want to get
  information on certain column (can be used only with PDO::CUBRID_SCH_COL_PRIVILEGE).
  
  The result of this function is returned as a two-dimensional array (column (associative array) *
  row (numeric array)). The following tables shows types of schema and the column structure of the
  result array to be returned based on the schema type.
  
  Result Composition of Each TypeSchemaColumn NumberColumn
  NameValuePDO::CUBRID_SCH_TABLE1NAME2TYPE0:system table 1:view
  2:tablePDO::CUBRID_SCH_VIEW1NAME2TYPE1:viewPDO::CUBRID_SCH_QUERY_SPEC1QUERY_SPECPDO::CUBRID_SCH_ATTRIBUTE
  / PDO::CUBRID_SCH_TABLE_ATTRIBUTE1ATTR_NAME2DOMAIN3SCALE4PRECISION5INDEXED1:indexed6NOT NULL1:not
  null7SHARED1:shared8UNIQUE1:unique9DEFAULT10ATTR_ORDERbase:111CLASS_NAME12SOURCE_CLASS13IS_KEY1:keyPDO::CUBRID_SCH_METHOD
  /
  PDO::CUBRID_SCH_TABLE_METHOD1NAME2RET_DOMAIN3ARG_DOMAINPDO::CUBRID_SCH_METHOD_FILE1METHOD_FILEPDO::CUBRID_SCH_SUPER_TABLE
  / PDO::CUBRID_SCH_DIRECT_SUPER_TABLE / PDO::CUBRID_SCH_SUB_TABLE1CLASS_NAME2TYPE0:system table
  1:view 2:tablePDO::CUBRID_SCH_CONSTRAINT1TYPE0:unique 1:index 2:reverse unique 3:reverse
  index2NAME3ATTR_NAME4NUM_PAGES5NUM_KEYS6PRIMARY_KEY1:primary
  key7KEY_ORDERbase:1PDO::CUBRID_SCH_TRIGGER1NAME2STATUS3EVENT4TARGET_CLASS5TARGET_ATTR6ACTION_TIME7ACTION8PRIORITY9CONDITION_TIME10CONDITIONPDO::CUBRID_SCH_TABLE_PRIVILEGE
  / PDO::CUBRID_SCH_COL_PRIVILEGE1CLASS_NAME /
  ATTR_NAME2PRIVILEGE3GRANTABLEPDO::CUBRID_SCH_PRIMARY_KEY1CLASS_NAME2ATTR_NAME3KEY_SEQbase:14KEY_NAMEPDO::CUBRID_SCH_IMPORTED_KEYS
  / PDO::CUBRID_SCH_EXPORTED_KEYS /
  PDO::CUBRID_SCH_CROSS_REFERENCE1PKTABLE_NAME2PKCOLUMN_NAME3FKTABLE_NAMEbase:14FKCOLUMN_NAME5KEY_SEQbase:16UPDATE_ACTION0:cascade
  1:restrict 2:no action 3:set null7DELETE_ACTION0:cascade 1:restrict 2:no action 3:set
  null8FK_NAME9PK_NAME

<comment>Param:</comment>
  <info>int</info>     <strong>$schema_type</strong>  Schema type that you want to know.
  <info>string</info>  <strong>$table_name</strong>   Table you want to know the schema of.
  <info>string</info>  <strong>$col_name</strong>     Column you want to know the schema of.

<comment>Return:</comment>
  <info>array</info>  Array containing the schema information, when process is successful;
         
         FALSE, when process is unsuccessful


id: PDO::errorCode
type: function
doc:
<comment>Description:</comment>
  Fetch the SQLSTATE associated with the last operation on the database handle

<comment>Return:</comment>
  <info>string|null</info>  Returns an SQLSTATE, a five characters alphanumeric identifier defined in the ANSI
               SQL-92 standard.  Briefly, an SQLSTATE consists of a two characters class value
               followed by a three characters subclass value. A class value of 01 indicates a
               warning and is accompanied by a return code of SQL_SUCCESS_WITH_INFO. Class values
               other than '01', except for the class 'IM', indicate an error.  The class 'IM' is
               specific to warnings and errors that derive from the implementation of PDO (or
               perhaps ODBC, if you're using the ODBC driver) itself.  The subclass value '000' in
               any class indicates that there is no subclass for that SQLSTATE.
               
               PDO::errorCode only retrieves error codes for operations performed directly on the
               database handle. If you create a PDOStatement object through PDO::prepare or
               PDO::query and invoke an error on the statement handle, PDO::errorCode will not
               reflect that error. You must call PDOStatement::errorCode to return the error code
               for an operation performed on a particular statement handle.
               
               Returns <info>null</info> if no operation has been run on the database handle.

<comment>See Also:</comment>
   * PDO::errorInfo
   * PDOStatement::errorCode
   * PDOStatement::errorInfo


id: PDO::errorInfo
type: function
doc:
<comment>Description:</comment>
  Fetch extended error information associated with the last operation on the database handle

<comment>Return:</comment>
  <info>array</info>  PDO::errorInfo returns an array of error information about the last operation performed by
         this database handle. The array consists of at least the following fields:
         ElementInformation0SQLSTATE error code (a five characters alphanumeric identifier defined
         in the ANSI SQL standard).1Driver-specific error code.2Driver-specific error message.
         
         If the SQLSTATE error code is not set or there is no driver-specific error, the elements
         following element 0 will be set to <info>null</info>.
         
         PDO::errorInfo only retrieves error information for operations performed directly on the
         database handle. If you create a PDOStatement object through PDO::prepare or PDO::query and
         invoke an error on the statement handle, PDO::errorInfo will not reflect the error from the
         statement handle. You must call PDOStatement::errorInfo to return the error information for
         an operation performed on a particular statement handle.

<comment>See Also:</comment>
   * PDO::errorCode
   * PDOStatement::errorCode
   * PDOStatement::errorInfo


id: PDO::exec
type: function
doc:
<comment>Description:</comment>
  Executa uma instrução SQL e retorna o número de linhas afetadas
    
  
  PDO::exec executa uma instrução SQL em uma única chamada de função, retornando o número de linhas
  afetadas pela instrução.
  
  PDO::exec não retorna resultados de uma instrução SELECT. Para uma instrução SELECT que você só
  precisa emitir uma vez durante seu programa, considere a emissão de PDO::query. Para uma instrução
  que você precisa emitir várias vezes, prepare um objeto PDOStatement com PDO::prepare e emita a
  instrução com PDOStatement::execute.

<comment>Param:</comment>
  <info>string</info>  <strong>$statement</strong>  A instrução SQL para preparar e executar.
                      
                      Os dados dentro da consulta devem ser adequadamente escapados.

<comment>Return:</comment>
  <info>int|false</info>  PDO::exec retorna o número de linhas que foram modificadas ou excluídas pela instrução
             SQL que você emitiu. Se nenhuma linha for afetada, PDO::exec retorna <return>0</return>.
             
             Esta função pode
             retornar o valor booleano <info>false</info>, mas também pode retornar um valor não booleano que
             pode ser
             avaliado como <info>false</info>. Leia a seção sobre Booleanos para mais
             informações. Use o operador
             === para testar o valor retornado por esta
             função.
             
             O exemplo a seguir depende incorretamente do valor de retorno de PDO::exec, em que uma
             instrução que afetou 0 linhas resulta em uma chamada para <strong>die()</strong>: exec() or
             die(print_r($db->errorInfo(), true)); // incorrect
             ?>
             ]]>

<comment>See Also:</comment>
   * PDO::prepare
   * PDO::query
   * PDOStatement::execute


id: PDO::getAttribute
type: function
doc:
<comment>Description:</comment>
  Recuperar um atributo da conexão com o banco de dados
    
  
  Esta função retorna o valor de um atributo da conexão com o banco de dados. Para recuperar
  atributos de PDOStatement consulte PDOStatement::getAttribute.
  
  Note que algumas combinações de banco de dados e drivers podem não suportar todos os atributos da
  conexão com o banco de dados.

<comment>Param:</comment>
  <info>int</info>  <strong>$attribute</strong>  Uma das constantes <return>PDO::ATTR_*</return>. Os atributos genéricos que se aplicam a conexões
                   com o banco de dados são os seguintes:
                   <return>PDO::ATTR_AUTOCOMMIT</return><return>PDO::ATTR_CASE</return><return>PDO::ATTR_CLIENT_VERSION</return><return>PDO::ATTR_CONNECTION_STATUS</return><return>PDO::ATTR_DRIVER_NAME</return><return>PDO::ATTR_ERRMODE</return><return>PDO::ATTR_ORACLE_NULLS</return><return>PDO::ATTR_PERSISTENT</return><return>PDO::ATTR_PREFETCH</return><return>PDO::ATTR_SERVER_INFO</return><return>PDO::ATTR_SERVER_VERSION</return><return>PDO::ATTR_TIMEOUT</return>
                   
                   Alguns drivers podem fazer uso de atributos específicos adicionais. Note que
                   atributos específicos de drivers não devem ser usados com outros drivers.

<comment>Return:</comment>
  <info>mixed</info>  Uma chamada com sucesso retornará o valor do atributo PDO solicitado. Uma chamada sem
         sucesso retornará <return>null</return>.

<comment>See Also:</comment>
   * PDO::setAttribute
   * PDOStatement::getAttribute
   * PDOStatement::setAttribute


id: PDO::getAvailableDrivers
type: function
doc:
<comment>Description:</comment>
  Retorna um array com os drivers PDO disponíveis
    
  
  Esta função retorna todos os drivers PDO disponíveis que podem ser usados no parâmetro <strong>$DSN</strong> de
  PDO::__construct.

<comment>Return:</comment>
  <info>array</info>  PDO::getAvailableDrivers retorna um array com os drivers PDO disponíveis. Se nenhum driver
         estiver disponível então o retorno será um array vazio.


id: PDO::inTransaction
type: function
doc:
<comment>Description:</comment>
  Checks if inside a transaction
    
  
  Checks if a transaction is currently active within the driver. This method only works for database
  drivers that support transactions.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if a transaction is currently active, and <info>false</info> if not.


id: PDO::lastInsertId
type: function
doc:
<comment>Description:</comment>
  Returns the ID of the last inserted row or sequence value
    
  
  Returns the ID of the last inserted row, or the last value from a sequence object, depending on
  the underlying driver. For example, PDO_PGSQL allows the name of any sequence object to be
  specified for the <strong>$name</strong> parameter.
  
  This method may not return a meaningful or consistent result across different PDO drivers, because
  the underlying database may not even support the notion of auto-increment fields or sequences.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$name</strong>  Name of the sequence object from which the ID should be returned.

<comment>Return:</comment>
  <info>string|false</info>  If a sequence name was not specified for the <strong>$name</strong> parameter, PDO::lastInsertId
                returns a string representing the row ID of the last row that was inserted into the
                database.
                
                If a sequence name was specified for the <strong>$name</strong> parameter, PDO::lastInsertId returns
                a string representing the last value retrieved from the specified sequence object.
                
                If the PDO driver does not support this capability, PDO::lastInsertId triggers an
                <return>IM001</return> SQLSTATE.


id: PDO::pgsqlCopyFromArray
type: function
doc:
<comment>Description:</comment>
  Copy data from PHP array into table
  
  Copies data from <strong>$rows</strong> array to table <strong>$table_name</strong> using <strong>$delimiter</strong> as fields delimiter and <strong>$fields</strong>
  list

<comment>Param:</comment>
  <info>string</info>  <strong>$table_name</strong>  String containing table name
  <info>array</info>   <strong>$rows</strong>        Array of strings with fields separated by <strong>$delimiter</strong>
  <info>string</info>  <strong>$delimiter</strong>   Delimiter used in <strong>$rows</strong> array
  <info>string</info>  <strong>$null_as</strong>     How to interpret null values
  <info>string</info>  <strong>$fields</strong>      List of fields to insert

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success, ou <info>false</info> em caso de falha.


id: PDO::pgsqlCopyFromFile
type: function
doc:
<comment>Description:</comment>
  Copy data from file into table
  
  Copies data from file specified by <strong>$filename</strong> into table <strong>$table_name</strong> using <strong>$delimiter</strong> as fields
  delimiter and <strong>$fields</strong> list

<comment>Param:</comment>
  <info>string</info>  <strong>$table_name</strong>  String containing table name
  <info>string</info>  <strong>$filename</strong>    Filename containing data to import
  <info>string</info>  <strong>$delimiter</strong>   Delimiter used in file specified by <strong>$filename</strong>
  <info>string</info>  <strong>$null_as</strong>     How to interpret null values
  <info>string</info>  <strong>$fields</strong>      List of fields to insert

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success, ou <info>false</info> em caso de falha.


id: PDO::pgsqlCopyToArray
type: function
doc:
<comment>Description:</comment>
  Copy data from database table into PHP array
  
  Copies data from <strong>$table</strong> into array using <strong>$delimiter</strong> as fields delimiter and <strong>$fields</strong> list

<comment>Param:</comment>
  <info>string</info>  <strong>$table_name</strong>  String containing table name
  <info>string</info>  <strong>$delimiter</strong>   Delimiter used in rows
  <info>string</info>  <strong>$null_as</strong>     How to interpret null values
  <info>string</info>  <strong>$fields</strong>      List of fields to export

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of rows, ou <info>false</info> em caso de falha.


id: PDO::pgsqlCopyToFile
type: function
doc:
<comment>Description:</comment>
  Copy data from table into file
  
  Copies data from table into file specified by <strong>$filename</strong> using <strong>$delimiter</strong> as fields delimiter and
  <strong>$fields</strong> list

<comment>Param:</comment>
  <info>string</info>  <strong>$table_name</strong>  String containing table name
  <info>string</info>  <strong>$filename</strong>    Filename to export data
  <info>string</info>  <strong>$delimiter</strong>   Delimiter used in file specified by <strong>$filename</strong>
  <info>string</info>  <strong>$null_as</strong>     How to interpret null values
  <info>string</info>  <strong>$fields</strong>      List of fields to insert

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success, ou <info>false</info> em caso de falha.


id: PDO::pgsqlGetNotify
type: function
doc:
<comment>Description:</comment>
  Get asynchronous notification
  
  Returns a result set representing a pending asynchronous notification.

<comment>Param:</comment>
  <info>int</info>  <strong>$result_type</strong>  The format the result set should be returned as, represented as a <info>PDO::FETCH_*</info>
                     constant.
  <info>int</info>  <strong>$ms_timeout</strong>   The length of time to wait for a response, in milliseconds.

<comment>Return:</comment>
  <info>array|false</info>  If one or more notifications is pending, returns a single row, with fields <return>message</return>
               and <return>pid</return>, otherwise returns <info>false</info>.


id: PDO::pgsqlGetPid
type: function
doc:
<comment>Description:</comment>
  Get the server PID
  
  Returns the server's PID.

<comment>Return:</comment>
  <info>int</info>  The server's PID.


id: PDO::pgsqlLOBCreate
type: function
doc:
<comment>Description:</comment>
  Creates a new large object
  
  <strong>PDO::pgsqlLOBCreate()</strong> creates a large object and returns the OID of that object.  You may then
  open a stream on the object using <strong>PDO::pgsqlLOBOpen()</strong> to read or write data to it.  The OID can be
  stored in columns of type OID and be used to reference the large object, without causing the row
  to grow arbitrarily large. The large object will continue to live in the database until it is
  removed by calling <strong>PDO::pgsqlLOBUnlink()</strong>.
  
  Large objects can be up to 2GB in size, but are cumbersome to use; you need to ensure that
  <strong>PDO::pgsqlLOBUnlink()</strong> is called prior to deleting the last row that references its OID from your
  database. In addition, large objects have no access controls.  As an alternative, try the bytea
  column type; recent versions of PostgreSQL allow bytea columns of up to 1GB in size and
  transparently manage the storage for optimal row size.
  
  This function must be called within a transaction.

<comment>Return:</comment>
  <info>string</info>  Returns the OID of the newly created large object on success, or <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>PDO::pgsqlLOBOpen()</strong>
   * <strong>PDO::pgsqlLOBUnlink()</strong>
   * <strong>pg_lo_create()</strong>


id: PDO::pgsqlLOBOpen
type: function
doc:
<comment>Description:</comment>
  Opens an existing large object stream
  
  <strong>PDO::pgsqlLOBOpen()</strong> opens a stream to access the data referenced by <strong>$oid</strong>.  If <strong>$mode</strong> is <return>r</return>, the
  stream is opened for reading, if <strong>$mode</strong> is <return>w</return>, then the stream will be opened for writing.  You can
  use all the usual filesystem functions, such as <strong>fread()</strong>, <strong>fwrite()</strong> and <strong>fgets()</strong> to manipulate the
  contents of the stream.
  
  This function, and all manipulations of the large object, must be called and carried out within a
  transaction.

<comment>Param:</comment>
  <info>string</info>  <strong>$oid</strong>   A large object identifier.
  <info>string</info>  <strong>$mode</strong>  If mode is <return>r</return>, open the stream for reading. If mode is <return>w</return>, open the stream for
                 writing.

<comment>Return:</comment>
  <info>resource|false</info>  Returns a stream resource on success ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PDO::pgsqlLOBCreate()</strong>
   * <strong>PDO::pgsqlLOBUnlink()</strong>
   * <strong>pg_lo_open()</strong>


id: PDO::pgsqlLOBUnlink
type: function
doc:
<comment>Description:</comment>
  Deletes the large object
  
  Deletes a large object from the database identified by OID.
  
  This function must be called within a transaction.

<comment>Param:</comment>
  <info>string</info>  <strong>$oid</strong>  A large object identifier

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PDO::pgsqlLOBOpen()</strong>
   * <strong>PDO::pgsqlLOBCreate()</strong>


id: PDO::prepare
type: function
doc:
<comment>Description:</comment>
  Prepares a statement for execution and returns a statement object
    
  
  Prepares an SQL statement to be executed by the PDOStatement::execute method. The statement
  template can contain zero or more named (:name) or question mark (?) parameter markers for which
  real values will be substituted when the statement is executed. Both named and question mark
  parameter markers cannot be used within the same statement template; only one or the other
  parameter style. Use these parameters to bind any user-input, do not include the user-input
  directly in the query.
  
  You must include a unique parameter marker for each value you wish to pass in to the statement
  when you call PDOStatement::execute. You cannot use a named parameter marker of the same name more
  than once in a prepared statement, unless emulation mode is on.
  
  Parameter markers can represent a complete data literal only. Neither part of literal, nor
  keyword, nor identifier, nor whatever arbitrary query  part can be bound using parameters. For
  example, you cannot bind multiple values  to a single parameter in the IN() clause of an SQL
  statement.
  
  Calling PDO::prepare and PDOStatement::execute for statements that will be issued multiple times
  with different parameter values optimizes the performance of your application by allowing the
  driver to negotiate client and/or server side caching of the query plan and meta information.
  Also, calling PDO::prepare and PDOStatement::execute helps to prevent SQL injection attacks by
  eliminating the need to manually quote and escape the parameters.
  
  PDO will emulate prepared statements/bound parameters for drivers that do not natively support
  them, and can also rewrite named or question mark style parameter markers to something more
  appropriate, if the driver supports one style but not the other.
  
  The parser used for emulated prepared statements and for rewriting named or question mark style
  parameters supports the non standard backslash escapes for single- and double quotes. That means
  that terminating quotes immediately preceeded by a backslash are not recognized as such, which may
  result in wrong detection of parameters causing the prepared statement to fail when it is
  executed. A work-around is to not use emulated prepares for such SQL queries, and to avoid
  rewriting of parameters by using a parameter style which is natively supported by the driver.
  
  As of PHP 7.4.0, question marks can be escaped by doubling them. That means that the <return>??</return> string
  will be translated to <return>?</return> when sending the query to the database.

<comment>Param:</comment>
  <info>string</info>  <strong>$query</strong>    This must be a valid SQL statement template for the target database server.
  <info>array</info>   <strong>$options</strong>  This array holds one or more key=&gt;value pairs to set attribute values for the
                    PDOStatement object that this method returns. You would most commonly use this
                    to set the <return>PDO::ATTR_CURSOR</return> value to <return>PDO::CURSOR_SCROLL</return> to request a scrollable
                    cursor. Some drivers have driver-specific options that may be set at
                    prepare-time.

<comment>Return:</comment>
  <info>PDOStatement|false</info>  If the database server successfully prepares the statement, PDO::prepare
                      returns a <class>PDOStatement</class> object. If the database server cannot successfully
                      prepare the statement, PDO::prepare returns <info>false</info> or emits <class>PDOException</class>
                      (depending on error handling).
                      
                      Emulated prepared statements does not communicate with the database server so
                      PDO::prepare does not check the statement.

<comment>See Also:</comment>
   * PDO::exec
   * PDO::query
   * PDOStatement::execute


id: PDO::query
type: function
doc:
<comment>Description:</comment>
  Prepares and executes an SQL statement without placeholders
    
  
  PDO::query prepares and executes an SQL statement in a single function call, returning the
  statement as a <class>PDOStatement</class> object.
  
  For a query that you need to issue multiple times, you will realize better performance if you
  prepare a <class>PDOStatement</class> object using PDO::prepare and issue the statement with multiple calls to
  PDOStatement::execute.
  
  If you do not fetch all of the data in a result set before issuing your next call to PDO::query,
  your call may fail. Call PDOStatement::closeCursor to release the database resources associated
  with the <class>PDOStatement</class> object before issuing your next call to PDO::query.
  
  If the <strong>$query</strong> contains placeholders, the statement must be prepared and executed separately using
  PDO::prepare and  PDOStatement::execute methods.

<comment>Param:</comment>
  <info>string</info>    <strong>$query</strong>      The SQL statement to prepare and execute.
                        
                        If the SQL contains placeholders, PDO::prepare and  PDOStatement::execute
                        must be used instead. Alternatively, the SQL can be prepared manually before
                        calling  PDO::query, with the data properly formatted using PDO::quote if
                        the driver supports it.
  <info>int|null</info>  <strong>$fetchMode</strong>  The default fetch mode for the returned <class>PDOStatement</class>. It must be one of the
                        <return>PDO::FETCH_*</return> constants.
                        
                        If this argument is passed to the function, the remaining arguments will be
                        treated as though PDOStatement::setFetchMode was called on the resultant
                        statement object. The subsequent arguments vary depending on the selected
                        fetch mode.

<comment>Return:</comment>
  <info>PDOStatement|false</info>  Returns a <class>PDOStatement</class> object ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::exec
   * PDO::prepare
   * PDOStatement::execute


id: PDO::quote
type: function
doc:
<comment>Description:</comment>
  Quotes a string for use in a query
    
  
  PDO::quote places quotes around the input string (if required) and escapes special characters
  within the input string, using a quoting style appropriate to the underlying driver.
  
  If you are using this function to build SQL statements, you are strongly recommended to use
  PDO::prepare to prepare SQL statements with bound parameters instead of using PDO::quote to
  interpolate user input into an SQL statement.  Prepared statements with bound parameters are not
  only more portable, more convenient, immune to SQL injection, but are often much faster to execute
  than interpolated queries, as both the server and client side can cache a compiled form of the
  query.
  
  Not all PDO drivers implement this method (notably PDO_ODBC).  Consider using prepared statements
  instead.
  
  The character set must be set either on the server level, or within the database connection itself
  (depending on the driver) for it to affect PDO::quote. See the driver-specific documentation for
  more information.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The string to be quoted.
  <info>int</info>     <strong>$type</strong>    Provides a hint to  the type of data for drivers that have alternate quoting
                   styles. For example <info>PDO_PARAM_LOB</info> will tell the driver to escape binary data.

<comment>Return:</comment>
  <info>string|false</info>  Returns a quoted string that is theoretically safe to pass into an SQL statement.
                Returns <info>false</info> if the driver does not support quoting in this way.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::execute


id: PDO::rollBack
type: function
doc:
<comment>Description:</comment>
  Rolls back a transaction
    
  
  Rolls back the current transaction, as initiated by PDO::beginTransaction.
  
  If the database was set to autocommit mode, this function will restore autocommit mode after it
  has rolled back the transaction.
  
  Some databases, including MySQL, automatically issue an implicit COMMIT when a database definition
  language (DDL) statement such as DROP TABLE or CREATE TABLE is issued within a transaction. The
  implicit COMMIT will prevent you from rolling back any other changes within the transaction
  boundary.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::beginTransaction
   * PDO::commit
   * Transactions and auto-commit


id: PDO::setAttribute
type: function
doc:
<comment>Description:</comment>
  Set an attribute
    
  
  Sets an attribute on the database handle. Some available generic attributes are listed below; some
  drivers may make use of additional driver specific attributes. Note that driver specific
  attributes must not be used with other drivers. <info>PDO::ATTR_CASE</info> Force column names to a specific
  case. Can take one of the following values: <info>PDO::CASE_LOWER</info> Force column names to lower case.
  <info>PDO::CASE_NATURAL</info> Leave column names as returned by the database driver. <info>PDO::CASE_UPPER</info> Force
  column names to upper case. <info>PDO::ATTR_ERRMODE</info> Error reporting mode of PDO. Can take one of the
  following values: <info>PDO::ERRMODE_SILENT</info> Only sets error codes. <info>PDO::ERRMODE_WARNING</info> Raises <info>E_WARNING</info>
  diagnostics. <info>PDO::ERRMODE_EXCEPTION</info> Throws <class>PDOException</class>s. <info>PDO::ATTR_ORACLE_NULLS</info> This attribute is
  available with all drivers, not just Oracle.  Determines if and how <info>null</info> and empty strings should
  be converted. Can take one of the following values: <info>PDO::NULL_NATURAL</info> No conversion takes place.
  <info>PDO::NULL_EMPTY_STRING</info> Empty strings get converted to <info>null</info>. <info>PDO::NULL_TO_STRING</info><info>null</info> gets converted
  to an empty string. <info>PDO::ATTR_STRINGIFY_FETCHES</info> Whether to convert numeric values to strings when
  fetching. Takes a value of type <info>bool</info>: <info>true</info> to enable and <info>false</info> to disable.
  <info>PDO::ATTR_STATEMENT_CLASS</info> Set user-supplied statement class derived from PDOStatement.  Requires
  <return>array(string classname, array(mixed constructor_args))</return>.  Cannot be used with persistent PDO
  instances. <info>PDO::ATTR_TIMEOUT</info> Specifies the timeout duration in seconds. Takes a value of type <info>int</info>.
  Not all drivers support this option, and its meaning may differ from driver to driver. For
  example, SQLite will wait for up to this time value before giving up on obtaining a writable lock,
  but other drivers may interpret this as a connection or a read timeout interval.
  <info>PDO::ATTR_AUTOCOMMIT</info> Only available for the OCI, Firebird, and MySQL drivers.  Whether to
  autocommit every single statement. Takes a value of type <info>bool</info>: <info>true</info> to enable and <info>false</info> to
  disable. By default, <info>true</info>. <info>PDO::ATTR_EMULATE_PREPARES</info> Only available for the OCI, Firebird, and
  MySQL drivers.  Whether enable or disable emulation of prepared statements. Some drivers do not
  support prepared statements natively or have limited support for them. If set to <info>true</info> PDO will
  always emulate prepared statements, otherwise PDO will attempt to use native prepared statements.
  In case the driver cannot successfully prepare the current query, PDO will always fall back to
  emulating the prepared statement. <info>PDO::MYSQL_ATTR_USE_BUFFERED_QUERY</info> Only available for the MySQL
  driver.  Whether to use buffered queries. Takes a value of type <info>bool</info>: <info>true</info> to enable and <info>false</info> to
  disable. By default, <info>true</info>. <info>PDO::ATTR_DEFAULT_FETCH_MODE</info> Set the default fetch mode. A description
  of the modes and how to use them is available in the PDOStatement::fetch documentation.
  
  Force column names to a specific case. Can take one of the following values:
  
  Force column names to lower case.
  
  Leave column names as returned by the database driver.
  
  Force column names to upper case.
  
  Error reporting mode of PDO. Can take one of the following values:
  
  Only sets error codes.
  
  Raises <info>E_WARNING</info> diagnostics.
  
  Throws <class>PDOException</class>s.
  
  This attribute is available with all drivers, not just Oracle.
  
  Determines if and how <info>null</info> and empty strings should be converted. Can take one of the following
  values:
  
  No conversion takes place.
  
  Empty strings get converted to <info>null</info>.
  
  <info>null</info> gets converted to an empty string.
  
  Whether to convert numeric values to strings when fetching. Takes a value of type <info>bool</info>: <info>true</info> to
  enable and <info>false</info> to disable.
  
  Set user-supplied statement class derived from PDOStatement.  Requires <return>array(string classname,
  array(mixed constructor_args))</return>.
  
  Cannot be used with persistent PDO instances.
  
  Specifies the timeout duration in seconds. Takes a value of type <info>int</info>.
  
  Not all drivers support this option, and its meaning may differ from driver to driver. For
  example, SQLite will wait for up to this time value before giving up on obtaining a writable lock,
  but other drivers may interpret this as a connection or a read timeout interval.
  
  Only available for the OCI, Firebird, and MySQL drivers.
  
  Whether to autocommit every single statement. Takes a value of type <info>bool</info>: <info>true</info> to enable and <info>false</info>
  to disable. By default, <info>true</info>.
  
  Only available for the OCI, Firebird, and MySQL drivers.
  
  Whether enable or disable emulation of prepared statements. Some drivers do not support prepared
  statements natively or have limited support for them. If set to <info>true</info> PDO will always emulate
  prepared statements, otherwise PDO will attempt to use native prepared statements. In case the
  driver cannot successfully prepare the current query, PDO will always fall back to emulating the
  prepared statement.
  
  Only available for the MySQL driver.
  
  Whether to use buffered queries. Takes a value of type <info>bool</info>: <info>true</info> to enable and <info>false</info> to disable.
  By default, <info>true</info>.
  
  Set the default fetch mode. A description of the modes and how to use them is available in the
  PDOStatement::fetch documentation.

<comment>Param:</comment>
  <info>int</info>    <strong>$attribute</strong>  The attribute to modify.
  <info>mixed</info>  <strong>$value</strong>      The value to set the <strong>$attribute</strong>, might require a specific type depending on the
                     attribute.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PDO::getAttribute()</strong>
   * <strong>PDOStatement::getAttribute()</strong>
   * <strong>PDOStatement::setAttribute()</strong>


id: PDO::sqliteCreateAggregate
type: function
doc:
<comment>Description:</comment>
  Registra uma função de agregação definida pelo usuário para uso em declarações SQL
    
  
  Esta função é
  EXPERIMENTAL. O comportamento desta função, seu nome e
  documentação poderão mudar sem aviso prévio em futuras versões do PHP.
  Use por sua conta e risco.
  
  Este método é semelhante a , exceto que registra funções que podem ser usadas para calcular um
  resultado agregado através de todas as linhas de uma consulta.
  
  A principal diferença entre este método e  é que duas funções são necessárias para gerenciar a
  agregação.

<comment>Param:</comment>
  <info>string</info>    <strong>$function_name</strong>  O nome da função usada nas declarações SQL.
  <info>callable</info>  <strong>$step_func</strong>      Função callback chamada para cada linha do conjunto de resultados. A
                            função PHP deve acumular o resultado e armazená-lo no contexto de
                            agregação.
                            
                            Esta função precisa ser definida como:
                            <info>mixed</info>step<info>mixed</info><strong>$context</strong><info>int</info><strong>$rownumber</strong><info>mixed</info><strong>$value</strong><info>mixed</info><strong>$values</strong> <strong>$context</strong><info>null</info>
                            para a primeira linha; nas linhas subsequentes terá o valor que foi
                            retornado anteriormente da função step; isso deve ser usado para manter
                            o estado de agregação. <strong>$rownumber</strong> O número da linha atual. <strong>$value</strong> O
                            primeiro argumento passado para a agregação. <strong>$values</strong> Outros argumentos
                            passados para a agregação.  O valor retornado desta função será usado
                            como o argumento <strong>$context</strong> na próxima chamada das funções step ou
                            finalize.
                            
                            <info>null</info> para a primeira linha; nas linhas subsequentes terá o valor que foi
                            retornado anteriormente da função step; isso deve ser usado para manter
                            o estado de agregação.
                            
                            O número da linha atual.
                            
                            O primeiro argumento passado para a agregação.
                            
                            Outros argumentos passados para a agregação.
  <info>mixed</info>     <strong>$context</strong>        <info>null</info> para a primeira linha; nas linhas subsequentes terá o valor que foi
                            retornado anteriormente da função step; isso deve ser usado para manter
                            o estado de agregação.
  <info>int</info>       <strong>$rownumber</strong>      O número da linha atual.
  <info>mixed</info>     <strong>$value</strong>          O primeiro argumento passado para a agregação.
  <info>mixed</info>     <strong>$values</strong>         Outros argumentos passados para a agregação.
  <info>callable</info>  <strong>$finalize_func</strong>  Função de chamada de retorno para agregar os dados "passados" de cada
                            linha. Depois que todas as linhas forem processadas, esta função será
                            chamada e deverá então pegar os dados do contexto de agregação e
                            retornar o resultado. Esta função deve retornar um tipo reconhecido pelo
                            SQLite (ou seja, um tipo escalar).
                            
                            Esta função precisa ser definida como:
                            <info>mixed</info>fini<info>mixed</info><strong>$context</strong><info>int</info><strong>$rowcount</strong> <strong>$context</strong> Contém o valor retornado da
                            última chamada à função step. <strong>$rowcount</strong> Contém o número de linhas nas
                            quais a agregação foi executada.  O valor retornado desta função será
                            usado como valor retornado da agregação.
                            
                            Contém o valor retornado da última chamada à função step.
                            
                            Contém o número de linhas nas quais a agregação foi executada.
  <info>mixed</info>     <strong>$context</strong>        Contém o valor retornado da última chamada à função step.
  <info>int</info>       <strong>$rowcount</strong>       Contém o número de linhas nas quais a agregação foi executada.
  <info>int</info>       <strong>$num_args</strong>       Indica ao analisador SQLite se a função callback aceita um número
                            predeterminado de argumentos.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * <strong>sqlite_create_function()</strong>
   * <strong>sqlite_create_aggregate()</strong>


id: PDO::sqliteCreateCollation
type: function
doc:
<comment>Description:</comment>
  Registra uma Função Definida pelo Usuário para uso como função de collation em declarações SQL
    
  
  Esta função é
  EXPERIMENTAL. O comportamento desta função, seu nome e
  documentação poderão mudar sem aviso prévio em futuras versões do PHP.
  Use por sua conta e risco.

<comment>Param:</comment>
  <info>string</info>    <strong>$name</strong>      Nome da função de collation SQL a ser criada ou redefinida.
  <info>callable</info>  <strong>$callback</strong>  O nome de uma função PHP ou função definida pelo usuário a ser aplicada como
                       chamada de retorno, definindo o comportamento da collation. Ela deve aceitar
                       duas strings e retornar como strcmp(), ou seja, deve retornar -1, 1 ou 0 se a
                       primeira string for ordenada antes, depois ou for igual à segunda.
                       
                       Esta função precisa ser definida como:
                       <info>int</info>collation<info>string</info><strong>$string1</strong><info>string</info><strong>$string2</strong>

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: PDO::sqliteCreateFunction
type: function
doc:
<comment>Description:</comment>
  Registra uma Função Definida pelo Usuário para uso em declarações SQL
    
  
  Esta função é
  EXPERIMENTAL. O comportamento desta função, seu nome e
  documentação poderão mudar sem aviso prévio em futuras versões do PHP.
  Use por sua conta e risco.
  
  Este método permite registrar uma função PHP com o SQLite como uma UDF (Função Definida pelo
  Usuário), para que possa ser chamada a partir das declarações SQL.
  
  A UDF pode ser usada em qualquer declaração SQL que possa chamar funções, como declarações SELECT
  e UPDATE e também em triggers.

<comment>Param:</comment>
  <info>string</info>    <strong>$function_name</strong>  O nome da função usada nas declarações SQL.
  <info>callable</info>  <strong>$callback</strong>       Função callback para tratar a função SQL definida.
                            
                            As funções callback devem retornar um tipo reconhecido pelo SQLite (ou
                            seja, um tipo escalar).
                            
                            Esta função precisa ser definida como:
                            <info>mixed</info>callback<info>mixed</info><strong>$value</strong><info>mixed</info><strong>$values</strong> <strong>$value</strong> O primeiro argumento passado
                            para a função SQL. <strong>$values</strong> Argumentos adicionais passados para a função
                            SQL.
                            
                            O primeiro argumento passado para a função SQL.
                            
                            Argumentos adicionais passados para a função SQL.
  <info>mixed</info>     <strong>$value</strong>          O primeiro argumento passado para a função SQL.
  <info>mixed</info>     <strong>$values</strong>         Argumentos adicionais passados para a função SQL.
  <info>int</info>       <strong>$num_args</strong>       O número de argumentos que a função SQL utiliza. Se este parâmetro for
                            <return>-1</return>, então a função SQL poderá receber qualquer número de argumentos.
  <info>int</info>       <strong>$flags</strong>          Uma conjunção bit a bit de flags. Atualmente, apenas
                            <info>PDO::SQLITE_DETERMINISTIC</info> é suportada, o que especifica que a função
                            sempre retorna o mesmo resultado dadas as mesmas entradas em uma única
                            instrução SQL.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * 
   * <strong>sqlite_create_function()</strong>
   * <strong>sqlite_create_aggregate()</strong>


id: PDOStatement
type: class
doc:
<comment>Description:</comment>
  Represents a prepared statement and, after the statement is executed, an  associated result set.


id: PDOStatement::bindColumn
type: function
doc:
<comment>Description:</comment>
  Bind a column to a PHP variable
    
  
  PDOStatement::bindColumn arranges to have a particular variable bound to a given column in the
  result-set from a query.  Each call to PDOStatement::fetch or PDOStatement::fetchAll will update
  all the variables that are bound to columns.
  
  Since information about the columns is not always available to PDO until the statement is
  executed, portable applications should call this function after PDOStatement::execute.
  
  However, to be able to bind a LOB column as a stream when using the PgSQL driver, applications
  should call this method before calling PDOStatement::execute, otherwise the large object OID will
  be returned as an integer.

<comment>Param:</comment>
  <info>string|int</info>  <strong>$column</strong>         Number of the column (1-indexed) or name of the column in the result
                              set. If using the column name, be aware that the name should match the
                              case of the column, as returned by the driver.
  <info>mixed</info>       <strong>$var</strong>            Name of the PHP variable to which the column will be bound.
  <info>int</info>         <strong>$type</strong>           Data type of the parameter, specified by the <return>PDO::PARAM_*</return> constants.
  <info>int</info>         <strong>$maxLength</strong>      A hint for pre-allocation.
  <info>mixed</info>       <strong>$driverOptions</strong>  Optional parameter(s) for the driver.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDOStatement::execute
   * PDOStatement::fetch
   * PDOStatement::fetchAll
   * PDOStatement::fetchColumn


id: PDOStatement::bindParam
type: function
doc:
<comment>Description:</comment>
  Binds a parameter to the specified variable name
    
  
  Binds a PHP variable to a corresponding named or question mark placeholder in the SQL statement
  that was used to prepare the statement.  Unlike PDOStatement::bindValue, the variable is bound as
  a reference and will only be evaluated at the time that PDOStatement::execute is called.
  
  Most parameters are input parameters, that is, parameters that are used in a read-only fashion to
  build up the query (but may nonetheless be cast according to <strong>$type</strong>).  Some drivers support the
  invocation of stored procedures that return data as output parameters, and some also as
  input/output parameters that both send in data and are updated to receive it.

<comment>Param:</comment>
  <info>string|int</info>  <strong>$param</strong>          Parameter identifier. For a prepared statement using named
                              placeholders, this will be a parameter name of the form :name. For a
                              prepared statement using question mark placeholders, this will be the
                              1-indexed position of the parameter.
  <info>mixed</info>       <strong>$var</strong>            Name of the PHP variable to bind to the SQL statement parameter.
  <info>int</info>         <strong>$type</strong>           Explicit data type for the parameter using the <return>PDO::PARAM_*</return> constants.
                              To return an INOUT parameter from a stored procedure,  use the bitwise
                              OR operator to set the <info>PDO::PARAM_INPUT_OUTPUT</info> bits for the <strong>$type</strong>
                              parameter.
  <info>int</info>         <strong>$maxLength</strong>      Length of the data type. To indicate that a parameter is an OUT
                              parameter from a stored procedure, you must explicitly set the length.
                              Meaningful only when <strong>$type</strong> parameter is <info>PDO::PARAM_INPUT_OUTPUT</info>.
  <info>mixed</info>       <strong>$driverOptions</strong>  

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::execute
   * PDOStatement::bindValue


id: PDOStatement::bindValue
type: function
doc:
<comment>Description:</comment>
  Binds a value to a parameter
    
  
  Binds a value to a corresponding named or question mark placeholder in the SQL statement that was
  used to prepare the statement.

<comment>Param:</comment>
  <info>string|int</info>  <strong>$param</strong>  Parameter identifier. For a prepared statement using named placeholders, this
                      will be a parameter name of the form :name. For a prepared statement using
                      question mark placeholders, this will be the 1-indexed position of the
                      parameter.
  <info>mixed</info>       <strong>$value</strong>  The value to bind to the parameter.
  <info>int</info>         <strong>$type</strong>   Explicit data type for the parameter using the <return>PDO::PARAM_*</return> constants.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::execute
   * PDOStatement::bindParam


id: PDOStatement::closeCursor
type: function
doc:
<comment>Description:</comment>
  Closes the cursor, enabling the statement to be executed again
    
  
  PDOStatement::closeCursor frees up the connection to the server so that other SQL statements may
  be issued, but leaves the statement in a state that enables it to be executed again.
  
  This method is useful for database drivers that do not support executing a PDOStatement object
  when a previously executed PDOStatement object still has unfetched rows. If your database driver
  suffers from this limitation, the problem may manifest itself in an out-of-sequence error.
  
  PDOStatement::closeCursor is implemented either as an optional driver specific method (allowing
  for maximum efficiency), or as the generic PDO fallback if no driver specific function is
  installed. The PDO generic fallback is semantically the same as writing the following code in your
  PHP script: fetch()) ; if (!$stmt->nextRowset()) break;
  } while (true);
  ?>
  ]]>

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDOStatement::execute


id: PDOStatement::columnCount
type: function
doc:
<comment>Description:</comment>
  Returns the number of columns in the result set
    
  
  Use PDOStatement::columnCount to return the number of columns in the result set represented by the
  PDOStatement object.
  
  If the PDOStatement object was returned from PDO::query, the column count is immediately
  available.
  
  If the PDOStatement object was returned from PDO::prepare, an accurate column count will not be
  available until you invoke PDOStatement::execute.

<comment>Return:</comment>
  <info>int</info>  Returns the number of columns in the result set represented by the PDOStatement object, even
       if the result set is empty. If there is no result set, PDOStatement::columnCount returns <return>0</return>.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::execute
   * PDOStatement::rowCount


id: PDOStatement::debugDumpParams
type: function
doc:
<comment>Description:</comment>
  Dump an SQL prepared command
    
  
  Dumps the information contained by a prepared statement directly on the output. It will provide
  the <return>SQL</return> query in use, the  number of parameters used (<return>Params</return>), the list of parameters with their
  key name or position, their name, their position in the query (if this is supported by the PDO
  driver, otherwise, it will be -1), type (<return>param_type</return>) as an integer, and a boolean value <return>is_param</return>.
  
  This is a debug function, which dumps the data directly to the normal output.  Assim como qualquer
  coisa que envia
  seu resultado diretamente para o navegador, as funções de controle de saída podem ser usadas para
  capturar
  a saída desta função e salvá-la em uma
  <info>string</info>, por exemplo.
  
  Assim como qualquer coisa que envia
  seu resultado diretamente para o navegador, as funções de controle de saída podem ser usadas para
  capturar
  a saída desta função e salvá-la em uma
  <info>string</info>, por exemplo.
  
  This will only dump the parameters in the statement at the moment of the dump. Extra parameters
  are not stored in the statement, and not displayed.

<comment>Return:</comment>
  <info>bool|null</info>  Returns <info>null</info>, or <info>false</info> in case of an error.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::bindParam
   * PDOStatement::bindValue


id: PDOStatement::errorCode
type: function
doc:
<comment>Description:</comment>
  Fetch the SQLSTATE associated with the last operation on the statement handle

<comment>Return:</comment>
  <info>string|null</info>  Identical to PDO::errorCode, except that  PDOStatement::errorCode only retrieves
               error codes for operations performed with PDOStatement objects.

<comment>See Also:</comment>
   * PDO::errorCode
   * PDO::errorInfo
   * PDOStatement::errorInfo


id: PDOStatement::errorInfo
type: function
doc:
<comment>Description:</comment>
  Fetch extended error information associated with the last operation on the statement handle

<comment>Return:</comment>
  <info>array</info>  PDOStatement::errorInfo returns an array of error information about the last operation
         performed by this statement handle. The array consists of at least the following fields:
         ElementInformation0SQLSTATE error code (a five characters alphanumeric identifier defined
         in the ANSI SQL standard).1Driver specific error code.2Driver specific error message.

<comment>See Also:</comment>
   * PDO::errorCode
   * PDO::errorInfo
   * PDOStatement::errorCode


id: PDOStatement::execute
type: function
doc:
<comment>Description:</comment>
  Executes a prepared statement
    
  
  Execute the prepared statement. If the prepared statement included parameter markers, either:
  PDOStatement::bindParam and/or PDOStatement::bindValue has to be called to bind either variables
  or values (respectively) to the parameter markers. Bound variables pass their value as input and
  receive the output value, if any, of their associated parameter markersor an array of input-only
  parameter values has to be passed
  
  PDOStatement::bindParam and/or PDOStatement::bindValue has to be called to bind either variables
  or values (respectively) to the parameter markers. Bound variables pass their value as input and
  receive the output value, if any, of their associated parameter markers
  
  or an array of input-only parameter values has to be passed

<comment>Param:</comment>
  <info>array|null</info>  <strong>$params</strong>  An array of values with as many elements as there are bound parameters in the
                       SQL statement being executed. All values are treated as <info>PDO::PARAM_STR</info>.
                       
                       Multiple values cannot be bound to a single parameter; for example, it is not
                       allowed to bind two values to a single named parameter in an IN() clause.
                       
                       Binding more values than specified is not possible; if more keys exist in
                       <strong>$params</strong> than in the SQL specified  in the PDO::prepare, then the statement
                       will  fail and an error is emitted.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::bindParam
   * PDOStatement::fetch
   * PDOStatement::fetchAll
   * PDOStatement::fetchColumn


id: PDOStatement::fetch
type: function
doc:
<comment>Description:</comment>
  Fetches the next row from a result set
    
  
  Fetches a row from a result set associated with a PDOStatement object. The <strong>$mode</strong> parameter
  determines how PDO returns the row.

<comment>Param:</comment>
  <info>int</info>  <strong>$mode</strong>               Controls how the next row will be returned to the caller. This value must
                           be one of the <return>PDO::FETCH_*</return> constants, defaulting to value of
                           <return>PDO::ATTR_DEFAULT_FETCH_MODE</return> (which defaults to <return>PDO::FETCH_BOTH</return>).
                           <return>PDO::FETCH_ASSOC</return>: returns an array indexed by column name as returned in
                           your result set <return>PDO::FETCH_BOTH</return> (default): returns an array indexed by
                           both column name and 0-indexed column number as returned in your result
                           set <return>PDO::FETCH_BOUND</return>: returns <info>true</info> and assigns the values of the columns
                           in your result set to the PHP variables to which they were bound with the
                           PDOStatement::bindColumn method <return>PDO::FETCH_CLASS</return>: returns a new instance
                           of the requested class, mapping the columns of the result set to named
                           properties in the class, and calling the constructor afterwards, unless
                           <return>PDO::FETCH_PROPS_LATE</return> is also given. If <strong>$mode</strong> includes
                           PDO::FETCH_CLASSTYPE (e.g. <return>PDO::FETCH_CLASS | PDO::FETCH_CLASSTYPE</return>) then
                           the name of the class is determined from a value of the first column.
                           <return>PDO::FETCH_INTO</return>: updates an existing instance of the requested class,
                           mapping the columns of the result set to named properties in the class
                           <return>PDO::FETCH_LAZY</return>: combines <return>PDO::FETCH_BOTH</return> and <return>PDO::FETCH_OBJ</return>, creating
                           the object variable names as they are accessed <return>PDO::FETCH_NAMED</return>: returns
                           an array with the same form as <return>PDO::FETCH_ASSOC</return>, except that if there are
                           multiple columns with the same name, the value referred to by that key
                           will be an array of all the values in the row that had that column name
                           <return>PDO::FETCH_NUM</return>: returns an array indexed by column number as returned in
                           your result set, starting at column 0 <return>PDO::FETCH_OBJ</return>: returns an
                           anonymous object with property names that correspond to the column names
                           returned in your result set <return>PDO::FETCH_PROPS_LATE</return>: when used with
                           <return>PDO::FETCH_CLASS</return>, the constructor of the class is called before the
                           properties are assigned from the respective column values.
                           
                           <return>PDO::FETCH_ASSOC</return>: returns an array indexed by column name as returned in
                           your result set
                           
                           <return>PDO::FETCH_BOTH</return> (default): returns an array indexed by both column name
                           and 0-indexed column number as returned in your result set
                           
                           <return>PDO::FETCH_BOUND</return>: returns <info>true</info> and assigns the values of the columns in
                           your result set to the PHP variables to which they were bound with the
                           PDOStatement::bindColumn method
                           
                           <return>PDO::FETCH_CLASS</return>: returns a new instance of the requested class, mapping
                           the columns of the result set to named properties in the class, and
                           calling the constructor afterwards, unless <return>PDO::FETCH_PROPS_LATE</return> is also
                           given. If <strong>$mode</strong> includes PDO::FETCH_CLASSTYPE (e.g. <return>PDO::FETCH_CLASS |
                           PDO::FETCH_CLASSTYPE</return>) then the name of the class is determined from a
                           value of the first column.
                           
                           <return>PDO::FETCH_INTO</return>: updates an existing instance of the requested class,
                           mapping the columns of the result set to named properties in the class
                           
                           <return>PDO::FETCH_LAZY</return>: combines <return>PDO::FETCH_BOTH</return> and <return>PDO::FETCH_OBJ</return>, creating
                           the object variable names as they are accessed
                           
                           <return>PDO::FETCH_NAMED</return>: returns an array with the same form as
                           <return>PDO::FETCH_ASSOC</return>, except that if there are multiple columns with the same
                           name, the value referred to by that key will be an array of all the
                           values in the row that had that column name
                           
                           <return>PDO::FETCH_NUM</return>: returns an array indexed by column number as returned in
                           your result set, starting at column 0
                           
                           <return>PDO::FETCH_OBJ</return>: returns an anonymous object with property names that
                           correspond to the column names returned in your result set
                           
                           <return>PDO::FETCH_PROPS_LATE</return>: when used with <return>PDO::FETCH_CLASS</return>, the constructor
                           of the class is called before the properties are assigned from the
                           respective column values.
  <info>int</info>  <strong>$cursorOrientation</strong>  For a PDOStatement object representing a scrollable cursor, this value
                           determines which row will be returned to the caller. This value must be
                           one of the <return>PDO::FETCH_ORI_*</return> constants, defaulting to <return>PDO::FETCH_ORI_NEXT</return>.
                           To request a scrollable cursor for your PDOStatement object, you must set
                           the <return>PDO::ATTR_CURSOR</return> attribute to <return>PDO::CURSOR_SCROLL</return> when you prepare the
                           SQL statement with PDO::prepare.
  <info>int</info>  <strong>$cursorOffset</strong>       For a PDOStatement object representing a scrollable cursor for which the
                           <strong>$cursorOrientation</strong> parameter is set to <return>PDO::FETCH_ORI_ABS</return>, this value
                           specifies the absolute number of the row in the result set that shall be
                           fetched.
                           
                           For a PDOStatement object representing a scrollable cursor for which the
                           <strong>$cursorOrientation</strong> parameter is set to <return>PDO::FETCH_ORI_REL</return>, this value
                           specifies the row to fetch relative to the cursor position before
                           PDOStatement::fetch was called.

<comment>Return:</comment>
  <info>mixed</info>  The return value of this function on success depends on the fetch type. In all cases, <info>false</info>
         is returned on failure or if there are no more rows.

<comment>See Also:</comment>
   * PDO::prepare
   * PDOStatement::execute
   * PDOStatement::fetchAll
   * PDOStatement::fetchColumn
   * PDOStatement::fetchObject
   * PDOStatement::setFetchMode


id: PDOStatement::fetchAll
type: function
doc:
<comment>Description:</comment>
  Fetches the remaining rows from a result set

<comment>Param:</comment>
  <info>int</info>         <strong>$mode</strong>             Controls the contents of the returned array as documented in
                                PDOStatement::fetch. Defaults to value of
                                <info>PDO::ATTR_DEFAULT_FETCH_MODE</info> (which defaults to <info>PDO::FETCH_BOTH</info>)
                                
                                To return an array consisting of all values of a single column from
                                the result set, specify <info>PDO::FETCH_COLUMN</info>. You can specify which
                                column you want with the <strong>$column</strong> parameter.
                                
                                To fetch only the unique values of a single column from the result
                                set, bitwise-OR <info>PDO::FETCH_COLUMN</info> with <info>PDO::FETCH_UNIQUE</info>.
                                
                                To return an associative array grouped by the values of a specified
                                column, bitwise-OR <info>PDO::FETCH_COLUMN</info> with <info>PDO::FETCH_GROUP</info>.
  <info>int</info>         <strong>$column</strong>           Used with <info>PDO::FETCH_COLUMN</info>. Returns the indicated 0-indexed column.
  <info>string</info>      <strong>$class</strong>            Used with <info>PDO::FETCH_CLASS</info>. Returns instances of the specified
                                class, mapping the columns of each row to named properties in the
                                class.
  <info>array|null</info>  <strong>$constructorArgs</strong>  Arguments of custom class constructor when the <strong>$mode</strong>  parameter is
                                <info>PDO::FETCH_CLASS</info>.
  <info>callable</info>    <strong>$callback</strong>         Used with <info>PDO::FETCH_FUNC</info>. Returns the results of calling the
                                specified function, using each row's columns as parameters in the
                                call.

<comment>Return:</comment>
  <info>array</info>  PDOStatement::fetchAll returns an array containing all of the remaining rows in the result
         set. The array represents each row as either an array of column values or an object with
         properties corresponding to each column name. An empty array is returned if there are zero
         results to fetch.
         
         Using this method to fetch large result sets will result in a heavy demand on system and
         possibly network resources. Rather than retrieving all of the data and manipulating it in
         PHP, consider using the database server to manipulate the result sets. For example, use the
         WHERE and ORDER BY clauses in SQL to restrict results before retrieving and processing them
         with PHP.

<comment>See Also:</comment>
   * PDO::query
   * PDOStatement::fetch
   * PDOStatement::fetchColumn
   * PDO::prepare
   * PDOStatement::setFetchMode


id: PDOStatement::fetchColumn
type: function
doc:
<comment>Description:</comment>
  Returns a single column from the next row of a result set
    
  
  Returns a single column from the next row of a result set or <info>false</info> if there are no more rows.
  
  PDOStatement::fetchColumn should not be used to retrieve boolean columns, as it is impossible to
  distinguish a value of <info>false</info> from there being no more rows to retrieve. Use PDOStatement::fetch
  instead.

<comment>Param:</comment>
  <info>int</info>  <strong>$column</strong>  0-indexed number of the column you wish to retrieve from the row. If no value is
                supplied, PDOStatement::fetchColumn fetches the first column.

<comment>Return:</comment>
  <info>mixed</info>  PDOStatement::fetchColumn returns a single column from the next row of a result set or
         <info>false</info> if there are no more rows.
         
         There is no way to return another column from the same row if you use
         PDOStatement::fetchColumn to retrieve data.

<comment>See Also:</comment>
   * PDO::query
   * PDOStatement::fetch
   * PDOStatement::fetchAll
   * PDO::prepare
   * PDOStatement::setFetchMode


id: PDOStatement::fetchObject
type: function
doc:
<comment>Description:</comment>
  Fetches the next row and returns it as an object
  
  Fetches the next row and returns it as an object. This function is an alternative to
  PDOStatement::fetch with <info>PDO::FETCH_CLASS</info> or <info>PDO::FETCH_OBJ</info> style.
  
  When an object is fetched, its properties are assigned from respective column values, and
  afterwards its constructor is invoked.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$class</strong>            Name of the created class.
  <info>array</info>        <strong>$constructorArgs</strong>  Elements of this array are passed to the constructor.

<comment>Return:</comment>
  <info>object|false</info>  Returns an instance of the required class with property names that correspond to the
                column names  ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDOStatement::fetch


id: PDOStatement::getAttribute
type: function
doc:
<comment>Description:</comment>
  Retrieve a statement attribute
    
  
  Gets an attribute of the statement. Currently, no generic attributes exist but only driver
  specific: <return>PDO::ATTR_CURSOR_NAME</return> (Firebird and ODBC specific): Get the name of cursor for <return>UPDATE
  ... WHERE CURRENT OF</return>.  Note that driver specific attributes must not be used with other drivers.
  
  <return>PDO::ATTR_CURSOR_NAME</return> (Firebird and ODBC specific): Get the name of cursor for <return>UPDATE ... WHERE
  CURRENT OF</return>.

<comment>Param:</comment>
  <info>int</info>  <strong>$name</strong>  The attribute to query.

<comment>Return:</comment>
  <info>mixed</info>  Returns the attribute value.

<comment>See Also:</comment>
   * PDO::getAttribute
   * PDO::setAttribute
   * PDOStatement::setAttribute


id: PDOStatement::getColumnMeta
type: function
doc:
<comment>Description:</comment>
  Returns metadata for a column in a result set
    
  
  Retrieves the metadata for a 0-indexed column in a result set as an associative array.
  
  Some drivers may not implement PDOStatement::getColumnMeta, as it is optional. However, all PDO
  drivers documented in the manual implement this function.

<comment>Param:</comment>
  <info>int</info>  <strong>$column</strong>  The 0-indexed column in the result set.

<comment>Return:</comment>
  <info>array|false</info>  Returns an associative array containing the following values representing the
               metadata for a single column:
               
               Returns <info>false</info> if the requested column does not exist in the result set, or if no
               result set exists.

<comment>See Also:</comment>
   * PDOStatement::columnCount
   * PDOStatement::rowCount


id: PDOStatement::getIterator
type: function
doc:
<comment>Description:</comment>
  Gets result set iterator
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>Iterator</info>  


id: PDOStatement::nextRowset
type: function
doc:
<comment>Description:</comment>
  Advances to the next rowset in a multi-rowset statement handle
    
  
  Some database servers support stored procedures that return more than one rowset (also known as a
  result set). PDOStatement::nextRowset enables you to access the second and subsequent rowsets
  associated with a PDOStatement object. Each rowset can have a different set of columns from the
  preceding rowset.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDOStatement::columnCount
   * PDOStatement::execute
   * PDOStatement::getColumnMeta
   * PDO::query


id: PDOStatement::rowCount
type: function
doc:
<comment>Description:</comment>
  Returns the number of rows affected by the last SQL statement
    
  
  PDOStatement::rowCount returns the number of rows affected by the last DELETE, INSERT, or UPDATE
  statement executed by the corresponding <return>PDOStatement</return> object.
  
  For statements that produce result sets, such as <return>SELECT</return>, the behavior is undefined and can be
  different for each driver. Some databases may return the number of rows produced by that statement
  (e.g. MySQL in buffered mode), but this behaviour is not guaranteed for all databases and should
  not be relied on for portable applications.
  
  This method returns "0" (zero) with the SQLite driver at all times, and with the PostgreSQL driver
  only when setting the <info>PDO::ATTR_CURSOR</info> statement attribute to <info>PDO::CURSOR_SCROLL</info>.

<comment>Return:</comment>
  <info>int</info>  Returns the number of rows.

<comment>See Also:</comment>
   * PDOStatement::columnCount
   * PDOStatement::fetchColumn
   * PDO::query


id: PDOStatement::setAttribute
type: function
doc:
<comment>Description:</comment>
  Define um atributo na instrução
    
  
  Define um atributo na instrução. Atualmente não há atributos genericos definidos, apenas atributos
  específicos do driver: <return>PDO::ATTR_CURSOR_NAME</return> (Específico do Firebird e do ODBC): Define o nome do
  cursor para <return>UPDATE ... WHERE CURRENT OF</return>.  Note que atributos específicos de drivers não devem ser
  usados com outros drivers.
  
  <return>PDO::ATTR_CURSOR_NAME</return> (Específico do Firebird e do ODBC): Define o nome do cursor para <return>UPDATE ...
  WHERE CURRENT OF</return>.

<comment>Param:</comment>
  <info>int</info>    <strong>$attribute</strong>  O atibuto a modificar.
  <info>mixed</info>  <strong>$value</strong>      O valor para definir o <strong>$attribute</strong>, pode requerer um tipo específico dependendo
                     do atributo.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * PDO::getAttribute
   * PDO::setAttribute
   * PDOStatement::getAttribute


id: PDOStatement::setFetchMode
type: function
doc:
<comment>Description:</comment>
  Define o modo de carga de dados para esta instrução

<comment>Param:</comment>
  <info>int</info>         <strong>$mode</strong>             O modo de carga precisa ser uma das constantes <return>PDO::FETCH_*</return>.
  <info>int</info>         <strong>$colno</strong>            Número da coluna.
  <info>string</info>      <strong>$class</strong>            Nome da classe.
  <info>array|null</info>  <strong>$constructorArgs</strong>  Argumentos do construtor.
  <info>object</info>      <strong>$object</strong>           Objeto.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: PGSQL_ASSOC
type: constant
doc:
<comment>Description:</comment>
  Usada em <strong>pg_fetch_array()</strong>. Retorna um array associativo contendo nomes dos campos e valores.


id: PGSQL_BAD_RESPONSE
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. A resposta do servidor não foi entendida.


id: PGSQL_BOTH
type: constant
doc:
<comment>Description:</comment>
  Usada em <strong>pg_fetch_array()</strong>. Retorna um array dos valores do campos com índice numérico (por número
  do campo) e associativo (por nome do campo).


id: PGSQL_COMMAND_OK
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. Conclusão bem sucedida de um comando que não retornou dados.


id: PGSQL_CONNECTION_BAD
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_connection_status()</strong> indicando que a conexão com o banco de dados está em um
  estado inválido.


id: PGSQL_CONNECTION_OK
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_connection_status()</strong> indicando que a conexão com o banco de dados está em um
  estado válido.


id: PGSQL_CONNECT_ASYNC
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_connect()</strong> para criar uma conexão assíncrona.


id: PGSQL_CONNECT_FORCE_NEW
type: constant
doc:
<comment>Description:</comment>
  Usado em <strong>pg_connect()</strong> para forçar a criação de nova conexão, ao invés de reutilizar uma conexão
  idêntica existente.


id: PGSQL_CONV_FORCE_NULL
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_convert()</strong>. Usa <return>NULL</return> da SQL no lugar de uma <info>string</info> vazia.


id: PGSQL_CONV_IGNORE_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_convert()</strong>. Ignora valores padrão na tabela durante a conversão.


id: PGSQL_CONV_IGNORE_NOT_NULL
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_convert()</strong>. Ignora conversão de <info>null</info> em colunas SQL <return>NOT NULL</return>.


id: PGSQL_COPY_IN
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. Transferência de dados "Copy In" (para o servidor) iniciada.


id: PGSQL_COPY_OUT
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. Transferência de dados "Copy Out" (do servidor) iniciada.


id: PGSQL_DIAG_CONTEXT
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. Um indicador de contexto no qual o erro ocorreu. Atualmente
  isto inclui um restreamento de pilha de chamadas de funções de linguagem procedural ativas e
  consultas geradas internamente. O rastreamento é uma entrada por linha, a mais recente primeiro.


id: PGSQL_DIAG_INTERNAL_POSITION
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. Esta é definida da mesma forma que o campo
  <info>PG_DIAG_STATEMENT_POSITION</info>, mas ela é usado quando a posição do cursor refere-se a um comando
  gerado internamente ao invés do enviado pelo cliente. O campo <info>PG_DIAG_INTERNAL_QUERY</info> irá sempre
  aparecer quando este campo aparecer.


id: PGSQL_DIAG_INTERNAL_QUERY
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. O texto do comando gerado internamente que falhou. Poderá
  ser, por exemplo, uma consulta SQL emitida por uma função PL/pgSQL.


id: PGSQL_DIAG_MESSAGE_DETAIL
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. Detalhe: uma mensagem de erro secundária trazendo mais
  detalhes sobre o problema. Pode conter múltiplas linhas.


id: PGSQL_DIAG_MESSAGE_HINT
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. Dica: um sugestão opcional sobre o que fazer em relação ao
  problema. Tem a intenção de ser diferente da mensagem detalhada de forma a oferecer conselhos
  (potencialmente inapropriados) ao invés de fatos concretos. Pode conter múltiplas linhas.


id: PGSQL_DIAG_MESSAGE_PRIMARY
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. A mensagem de erro legível primária (tipicamente uma linha).
  Sempre presente.


id: PGSQL_DIAG_SEVERITY
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. A severidade; os conteúdos dos campos são <return>ERROR</return>, <return>FATAL</return> ou
  <return>PANIC</return> (em uma mensagem de erro); ou <return>WARNING</return>, <return>NOTICE</return>, <return>DEBUG</return>, <return>INFO</return> ou <return>LOG</return> (em uma nota), ou uma
  tradução de um desses. Sempre presente.


id: PGSQL_DIAG_SEVERITY_NONLOCALIZED
type: constant
doc:
<comment>Description:</comment>
  A severidade; os conteúdos dos campos são ERROR, FATAL ou PANIC (em uma mensagem de erro); ou
  WARNING, NOTICE, DEBUG, INFO, ou LOG (em uma nota). Isto é idêntico ao campo PG_DIAG_SEVERITY
  exceto que o conteúdo nunca é traduzido. Está presente somente em versões 9.6 e posteriores / PHP
  7.3.0 e posteriores.


id: PGSQL_DIAG_SOURCE_FILE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. O nome do arquivo da localização do código-fonte PostgreSQL
  onde o erro foi reportado.


id: PGSQL_DIAG_SOURCE_FUNCTION
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. O nome da função do código-fonte PostgreSQL que reportou o
  erro.


id: PGSQL_DIAG_SOURCE_LINE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. O número da linha da localização do código-fonte PostgreSQL
  onde o erro foi reportado.


id: PGSQL_DIAG_SQLSTATE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. O código SQLSTATE do erro. O código SQLSTATE identifica o
  tipo do erro ocorrido; ele pode ser usado por aplicações front-end para executar operações
  específicas (como manipulação de erro) em resposta a um erro particular do banco de dados. Esta
  campo não muda com a localidade, e está sempre presente.


id: PGSQL_DIAG_STATEMENT_POSITION
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_error_field()</strong>. Uma string contendo um inteiro decimal indicando uma posição
  de cursor de erro como um índice da string da declaração original. O primeiro caractere tem índice
  1, e as posições são medidas em caracteres, não em bytes.


id: PGSQL_DML_ASYNC
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_insert()</strong>, <strong>pg_select()</strong>, <strong>pg_update()</strong> e <strong>pg_delete()</strong>. Executa consulta assíncrona
  através dessas funções.


id: PGSQL_DML_ESCAPE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_insert()</strong>, <strong>pg_select()</strong>, <strong>pg_update()</strong> e <strong>pg_delete()</strong>. Escapa todos os parâmetros ao
  invés de chamar <strong>pg_convert()</strong> internamente. Esta opção omite pesquisa por metadados. A consulta
  pode ser tão rápida quanto <strong>pg_query()</strong> e <strong>pg_send_query()</strong>.


id: PGSQL_DML_EXEC
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_insert()</strong>, <strong>pg_select()</strong>, <strong>pg_update()</strong> e <strong>pg_delete()</strong>. Executa consulta através dessas
  funções.


id: PGSQL_DML_NO_CONV
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_insert()</strong>, <strong>pg_select()</strong>, <strong>pg_update()</strong> e <strong>pg_delete()</strong>. Todos os parâmetros passados
  como são. Escape manual é requeriso se os parâmentros contiverem dados fornecidos pelo usuário.
  Use <strong>pg_escape_string()</strong> para isto.


id: PGSQL_DML_STRING
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_insert()</strong>, <strong>pg_select()</strong>, <strong>pg_update()</strong> e <strong>pg_delete()</strong>. Retorna a string da consulta
  executada.


id: PGSQL_EMPTY_QUERY
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. A string enviada para o servidor estava vazia.


id: PGSQL_ERRORS_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_set_error_verbosity()</strong>. O modo padrão produz mensagens que incluem as informações
  do campo acima mais algum detalhe, dica, ou campos de contexto (estes podem ter múltiplas linhas).


id: PGSQL_ERRORS_TERSE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_set_error_verbosity()</strong>. Especifica que a mensagem retornada inclui severidade,
  texto primário e posição somente; normalmente em uma única linha.


id: PGSQL_ERRORS_VERBOSE
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_set_error_verbosity()</strong>. Este modo prolixo inclui todos os campos disponíveis.


id: PGSQL_FATAL_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. Um erro fatal ocorreu.


id: PGSQL_LIBPQ_VERSION_STR
type: constant
doc:
<comment>Description:</comment>
  Antes do PHP 8.0.0, a versão longa da libpq que incluía informação de compilação. A partir do PHP
  8.0.0, o valor é idêntico a <info>PGSQL_LIBPQ_VERSION</info>, e usar <info>PGSQL_LIBPQ_VERSION_STR</info> tornou-se
  defasado.


id: PGSQL_NONFATAL_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>. Um erro não fatal (uma nota ou alerta) ocorreu.


id: PGSQL_NOTICE_ALL
type: constant
doc:
<comment>Description:</comment>
  Usado por <strong>pg_last_notice()</strong>. Disponível desde o PHP 7.1.0.


id: PGSQL_NUM
type: constant
doc:
<comment>Description:</comment>
  Usada em <strong>pg_fetch_array()</strong>. Retorna um array com índice numérico contendo números dos campos e
  valores.


id: PGSQL_POLLING_ACTIVE
type: constant
doc:
<comment>Description:</comment>
  Retornada por <strong>pg_connect_poll()</strong> para indicar que a conexão está atualmente ativa.


id: PGSQL_POLLING_FAILED
type: constant
doc:
<comment>Description:</comment>
  Retornada por <strong>pg_connect_poll()</strong> para indicar que a tentativa de conexão falhou.


id: PGSQL_POLLING_OK
type: constant
doc:
<comment>Description:</comment>
  Retornada por <strong>pg_connect_poll()</strong> para indicar que a conexão está pronta para uso.


id: PGSQL_POLLING_READING
type: constant
doc:
<comment>Description:</comment>
  Retornada por <strong>pg_connect_poll()</strong> para indicar que a conexão está esperando que o socket PostgreSQL
  possa ser lido.


id: PGSQL_POLLING_WRITING
type: constant
doc:
<comment>Description:</comment>
  Retornada por <strong>pg_connect_poll()</strong> para indicar que a conexão está esperando que o socket PostgreSQL
  possa ser escrito.


id: PGSQL_SEEK_CUR
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_lo_seek()</strong>. Operação de pesquisa deve iniciar a partir da posição atual.


id: PGSQL_SEEK_END
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_lo_seek()</strong>. Operação de pesquisa deve iniciar a partir do final do objeto.


id: PGSQL_SEEK_SET
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_lo_seek()</strong>. Operação de pesquisa deve iniciar a partir do início do objeto.


id: PGSQL_SHOW_CONTEXT_ALWAYS
type: constant
doc:
<comment>Description:</comment>
  Para ser usada com <strong>pg_set_error_context_set_visibility()</strong>, os campos do contexto são incluídos nas
  mensagens de erro, notas e alertas. Disponível a partir do PHP 8.3.0.


id: PGSQL_SHOW_CONTEXT_ERRORS
type: constant
doc:
<comment>Description:</comment>
  Para ser usada com <strong>pg_set_error_context_set_visibility()</strong>, os campos do contexto são incluídos
  apenas nas mensagens de erro. Este é o comportamento padrão. Disponível a partir do PHP 8.3.0.


id: PGSQL_SHOW_CONTEXT_NEVER
type: constant
doc:
<comment>Description:</comment>
  Para ser usada com <strong>pg_set_error_context_set_visibility()</strong>, o contexto nunca é mostrado. Disponível
  a partir do PHP 8.3.0.


id: PGSQL_STATUS_LONG
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_status()</strong>. Indica que é desejando um código de resultado numérico.


id: PGSQL_STATUS_STRING
type: constant
doc:
<comment>Description:</comment>
  Passada para <strong>pg_result_status()</strong>. Indica que é desejado um resultado textual.


id: PGSQL_TRACE_REGRESS_MODE
type: constant
doc:
<comment>Description:</comment>
  Para ser usada com <strong>pg_trace()</strong>, campos como OIDs são incluídos nas mensagens de rastreamento.
  Disponível a partir do PHP 8.3.0.


id: PGSQL_TRACE_SUPPRESS_TIMESTAMPS
type: constant
doc:
<comment>Description:</comment>
  Para ser usada com <strong>pg_trace()</strong>, o timestamp não é incluído nas mensagens de rastreamento.
  Disponível a partir do PHP 8.3.0.


id: PGSQL_TRANSACTION_ACTIVE
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_transaction_status()</strong>. Um comando está em progresso na conexão. Uma consulta foi
  enviada pela conexão e ainda não foi concluída.


id: PGSQL_TRANSACTION_IDLE
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_transaction_status()</strong>. Conexão está atualmente ociosa, não em uma transação.


id: PGSQL_TRANSACTION_INERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_transaction_status()</strong>. A conexão está ociosa, em um bloco de transação com falha.


id: PGSQL_TRANSACTION_INTRANS
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_transaction_status()</strong>. A conexão está ociosa, em um bloco de transação.


id: PGSQL_TRANSACTION_UNKNOWN
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_transaction_status()</strong>. A conexão está ruim.


id: PGSQL_TUPLES_OK
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>pg_result_status()</strong>.Conclusão bem sucedida de um retornando dados (como um <return>SELECT</return> ou
  <return>SHOW</return>).


id: PHP_BINARY
type: constant
doc:
<comment>Description:</comment>
  Especifica o caminho do binário do PHP utilizado na execução do script.


id: PHP_BINDIR
type: constant
doc:
<comment>Description:</comment>
  O valor --bindir foi configurado no configure. No Windows, é o valor informado em --with-prefix
  durante o configure.


id: PHP_EXTENSION_DIR
type: constant
doc:
<comment>Description:</comment>
  O diretório padrão onde localizar extensões carregáveis dinamicamente (podendo ser sobrescrito por
  extension_dir). Tem como o padrão <info>PHP_PREFIX</info> (ou PHP_PREFIX . "\\ext" no Windows).


id: PHP_EXTRA_VERSION
type: constant
doc:
<comment>Description:</comment>
  A versão "extra" do PHP como uma string (exemplo: '-extra' na versão "5.2.7-extra"). Geralmente
  utilizado por distribuidores para indicar uma versão de empacotamento.


id: PHP_FD_SETSIZE
type: constant
doc:
<comment>Description:</comment>
  O número máximo de descritores de arquivos para as chamadas de sistema select. Disponível a partir
  do PHP 7.1.0.


id: PHP_FLOAT_DIG
type: constant
doc:
<comment>Description:</comment>
  Número de dígitos decimais que podem ser arredondados para um float e recuperados sem perda de
  precisão. Disponível a partir do PHP 7.2.0.


id: PHP_FLOAT_EPSILON
type: constant
doc:
<comment>Description:</comment>
  O menor número positivo representável x, tal que <return>x + 1.0 != 1.0</return>. Disponível a partir do PHP 7.2.0.


id: PHP_FLOAT_MAX
type: constant
doc:
<comment>Description:</comment>
  O maior número de ponto flutuante representável. Disponível a partir do PHP 7.2.0.


id: PHP_FLOAT_MIN
type: constant
doc:
<comment>Description:</comment>
  O menor número de ponto flutuante positivo representável. Se você precisar do menor número de
  ponto flutuante negativo, use <return>- PHP_FLOAT_MAX</return>. Disponível a partir do PHP 7.2.0.


id: PHP_INT_MAX
type: constant
doc:
<comment>Description:</comment>
  O maior inteiro suportado nesta compilação do PHP. Geralmente int(2147483647) em sistemas de 32
  bit e int(9223372036854775807) em sistemas de 64 bits.


id: PHP_INT_MIN
type: constant
doc:
<comment>Description:</comment>
  O menor inteiro suportado nesta compilação do PHP. Geralmente int(-2147483648) em sistemas 32 bits
  e int(-9223372036854775808) em sistemas 64 bit. Normalmente PHP_INT_MIN === ~PHP_INT_MAX.


id: PHP_MAJOR_VERSION
type: constant
doc:
<comment>Description:</comment>
  O número de versão "major" do PHP como um inteiro (exemplo: int(5) para a versão "5.2.7-extra").


id: PHP_MAXPATHLEN
type: constant
doc:
<comment>Description:</comment>
  O tamanho máximo do nome de um arquivo (incluindo seus diretórios) suportado nesta versão do PHP.


id: PHP_MINOR_VERSION
type: constant
doc:
<comment>Description:</comment>
  O número de versão "minor" do PHP como um inteiro (exemplo: int(2) para a versão "5.2.7-extra").


id: PHP_OS_FAMILY
type: constant
doc:
<comment>Description:</comment>
  A família do sistema operacional para o qual o PHP foi compilado. Qualquer uma entre <return>'Windows'</return>,
  <return>'BSD'</return>, <return>'Darwin'</return>, <return>'Solaris'</return>, <return>'Linux'</return> ou <return>'Unknown'</return>. Disponível a partir do PHP 7.2.0.


id: PHP_OUTPUT_HANDLER_CLEANABLE
type: constant
doc:
<comment>Description:</comment>
  Controls whether an output buffer created by <strong>ob_start()</strong> can be cleaned.


id: PHP_OUTPUT_HANDLER_CONT
type: constant
doc:
<comment>Description:</comment>
  Indicates that the buffer has been flushed, but output buffering will continue.
  
  This is an alias for <info>PHP_OUTPUT_HANDLER_WRITE</info>.


id: PHP_OUTPUT_HANDLER_END
type: constant
doc:
<comment>Description:</comment>
  Indicates that output buffering has ended.
  
  This is an alias for <info>PHP_OUTPUT_HANDLER_FINAL</info>.


id: PHP_OUTPUT_HANDLER_FLUSHABLE
type: constant
doc:
<comment>Description:</comment>
  Controls whether an output buffer created by <strong>ob_start()</strong> can be flushed.


id: PHP_OUTPUT_HANDLER_REMOVABLE
type: constant
doc:
<comment>Description:</comment>
  Controls whether an output buffer created by <strong>ob_start()</strong> can be removed before the end of the
  script.


id: PHP_OUTPUT_HANDLER_STDFLAGS
type: constant
doc:
<comment>Description:</comment>
  The default set of output buffer flags; currently equivalent to <info>PHP_OUTPUT_HANDLER_CLEANABLE</info> |
  <info>PHP_OUTPUT_HANDLER_FLUSHABLE</info> | <info>PHP_OUTPUT_HANDLER_REMOVABLE</info>.


id: PHP_OUTPUT_HANDLER_WRITE
type: constant
doc:
<comment>Description:</comment>
  Indicates that the output buffer is being flushed, and had data to output.


id: PHP_PREFIX
type: constant
doc:
<comment>Description:</comment>
  O valor --prefix foi configurado durante o configure. No Windows, este é o valor de --with-prefix
  informado no configure.


id: PHP_QUERY_RFC1738
type: constant
doc:
<comment>Description:</comment>
  A codificação é realizada por RFC 1738 e o tipo de mídia <return>application/x-www-form-urlencoded</return>, que
  implica que os espaços são codificados como sinais de mais (<return>+</return>).


id: PHP_QUERY_RFC3986
type: constant
doc:
<comment>Description:</comment>
  A codificação é realizada de acordo com RFC 3986, e os espaços serão codificados em porcentagem
  (<return>%20</return>).


id: PHP_RELEASE_VERSION
type: constant
doc:
<comment>Description:</comment>
  O número de versão "release" do PHP como um inteiro (exemplo: int(7) para a versão "5.2.7-extra").


id: PHP_SAPI
type: constant
doc:
<comment>Description:</comment>
  O nome da Server API para esta compilação do PHP. Veja também <strong>php_sapi_name()</strong>.


id: PHP_SESSION_ACTIVE
type: constant
doc:
<comment>Description:</comment>
  Retorna o valor de <strong>session_status()</strong> se as sessões estiverem habilitadas, e uma sessão existir.


id: PHP_SESSION_DISABLED
type: constant
doc:
<comment>Description:</comment>
  Retorna o valor de <strong>session_status()</strong> se as sessões estiverem desabilitadas.


id: PHP_SESSION_NONE
type: constant
doc:
<comment>Description:</comment>
  Retorna o valor de <strong>session_status()</strong> se as sessões estiverem habilitadas, mas nenhuma sessão
  existir.


id: PHP_SHLIB_SUFFIX
type: constant
doc:
<comment>Description:</comment>
  O sufixo de bibliotecas compartilhadas da plataforma na qual o PHP foi compilado. Geralmente "so"
  (Unixes) ou "dll" (Windows).


id: PHP_VERSION
type: constant
doc:
<comment>Description:</comment>
  A versão atual do PHP como uma string no formato "major.minor.release[extra]".


id: PHP_VERSION_ID
type: constant
doc:
<comment>Description:</comment>
  A versão atual do PHP como um inteiro, útil para comparações entre versões (exemplo: int(50207) na
  versão "5.2.7-extra").


id: PHP_WINDOWS_EVENT_CTRL_BREAK
type: constant
doc:
<comment>Description:</comment>
  Um evento do Windows <return>CTRL+BREAK</return>. Disponível a partir do PHP 7.4.0 (somente para o Windows).


id: PHP_WINDOWS_EVENT_CTRL_C
type: constant
doc:
<comment>Description:</comment>
  Um evento do Windows <return>CTRL+C</return>. Disponível a partir do PHP 7.4.0 (somente para o Windows).


id: PHP_WINDOWS_NT_SERVER
type: constant
doc:
<comment>Description:</comment>
  This is a server system (eg. Server 2008/2003/2000), note that if this is a  domain controller its
  reported as <info>PHP_WINDOWS_NT_DOMAIN_CONTROLLER</info>.


id: PHP_WINDOWS_VERSION_BUILD
type: constant
doc:
<comment>Description:</comment>
  The Windows build number (for example, Windows Vista with SP1 applied is build 6001)


id: PHP_WINDOWS_VERSION_MAJOR
type: constant
doc:
<comment>Description:</comment>
  The major version of Windows, this can be either <return>4</return> (NT4/Me/98/95),  <return>5</return> (XP/2003 R2/2003/2000) or <return>6</return>
  (Vista/2008/7/8/8.1).


id: PHP_WINDOWS_VERSION_MINOR
type: constant
doc:
<comment>Description:</comment>
  The minor version of Windows, this can be either <return>0</return> (Vista/2008/2000/NT4/95),  <return>1</return> (XP), <return>2</return> (2003
  R2/2003/XP x64), <return>10</return> (98)  or <return>90</return> (ME).


id: PHP_WINDOWS_VERSION_PLATFORM
type: constant
doc:
<comment>Description:</comment>
  The platform that PHP currently is running on, this value is <return>2</return> on Windows  Vista/XP/2000/NT4,
  Server 2008/2003 and on Windows ME/98/95 this value is <return>1</return>.


id: PHP_WINDOWS_VERSION_PRODUCTTYPE
type: constant
doc:
<comment>Description:</comment>
  This contains the value used to determine the <return>PHP_WINDOWS_NT_*</return> constants. This value may be one of
  the <return>PHP_WINDOWS_NT_*</return> constants  indicating the platform type.


id: PHP_WINDOWS_VERSION_SP_MAJOR
type: constant
doc:
<comment>Description:</comment>
  The major version of the service pack installed, this value is <return>0</return>  if no service pack is installed.
  For example, Windows XP with service pack 3 installed  will make this value <return>3</return>.


id: PHP_WINDOWS_VERSION_SP_MINOR
type: constant
doc:
<comment>Description:</comment>
  The minor version of the service pack installed, this value is <return>0</return>  if no service pack is installed.


id: PHP_WINDOWS_VERSION_SUITEMASK
type: constant
doc:
<comment>Description:</comment>
  The suitemask is a bitmask that can tell if various features of Windows is installed,  see the
  table below for possible bitfield values.


id: PKCS7_BINARY
type: constant
doc:
<comment>Description:</comment>
  Normally the input message is converted to "canonical" format which is effectively using <return>CR</return> and <return>LF</return>
  as end of line: as required by the S/MIME specification.  When this option is present, no
  translation occurs. This is useful when handling binary data which may not be in MIME format.


id: PKCS7_DETACHED
type: constant
doc:
<comment>Description:</comment>
  When signing a message, use cleartext signing with the MIME type <return>"multipart/signed"</return>. This is the
  default if you do not specify any <strong>$flags</strong> to <strong>openssl_pkcs7_sign()</strong>. If you turn this option off, the
  message will be signed using opaque signing, which is more resistant to translation by mail relays
  but cannot be read by mail agents that do not support S/MIME.


id: PKCS7_NOCERTS
type: constant
doc:
<comment>Description:</comment>
  When signing a message the signer's certificate is normally included - with this option it is
  excluded.  This will reduce the size of the signed message but the verifier must have a copy of
  the signers certificate available locally (passed using the <strong>$extracerts</strong> to <strong>openssl_pkcs7_verify()</strong>
  for example).


id: PKCS7_NOCHAIN
type: constant
doc:
<comment>Description:</comment>
  Do not chain verification of signers certificates: that is don't use the certificates in the
  signed message as untrusted CAs.


id: PKCS7_NOINTERN
type: constant
doc:
<comment>Description:</comment>
  When verifying a message, certificates (if any) included in the message are normally searched for
  the signing certificate. With this option only the certificates specified in the <strong>$extracerts</strong>
  parameter of <strong>openssl_pkcs7_verify()</strong> are used.  The supplied certificates can still be used as
  untrusted CAs however.


id: PKCS7_NOOLDMIMETYPE
type: constant
doc:
<comment>Description:</comment>
  Available as of PHP 8.3.0. Sets the content-type to <return>application/pkcs7-mime</return> instead of
  <return>application/x-pkcs7-mime</return> to encrypt a message.


id: PNG_ALL_FILTERS
type: constant
doc:
<comment>Description:</comment>
  Um filtro PNG especial usado pela função <strong>imagepng()</strong>.


id: POSIX_PC_ALLOC_SIZE_MIN
type: constant
doc:
<comment>Description:</comment>
  The minimum number of bytes of storage allocated for any portion of a file. Available as of PHP
  8.3.0.


id: POSIX_PC_ALLOC_SYMLINK_MAX
type: constant
doc:
<comment>Description:</comment>
  The maximum number of symbolic links a given file or directory can have. Available as of PHP
  8.3.0.


id: POSIX_PC_CHOWN_RESTRICTED
type: constant
doc:
<comment>Description:</comment>
  If privileges are required to be allow <strong>chown()</strong> to work. Available as of PHP 8.3.0.


id: POSIX_PC_LINK_MAX
type: constant
doc:
<comment>Description:</comment>
  The maximum number of links a given file or directory can have. Available as of PHP 8.3.0.


id: POSIX_PC_MAX_CANON
type: constant
doc:
<comment>Description:</comment>
  The maximum number of bytes in a terminal canonical input buffer (pathname being then a character
  special file). Available as of PHP 8.3.0.


id: POSIX_PC_MAX_INPUT
type: constant
doc:
<comment>Description:</comment>
  The maximum number of bytes of a terminal input queue (pathname being then a character special
  file). Available as of PHP 8.3.0.


id: POSIX_PC_NAME_MAX
type: constant
doc:
<comment>Description:</comment>
  The maximum number of characters for a file name alone, not its path. Available as of PHP 8.3.0.


id: POSIX_PC_NO_TRUNC
type: constant
doc:
<comment>Description:</comment>
  If a file name (or files under a directory) is longer than <info>POSIX_PC_NAME_MAX</info>. Available as of PHP
  8.3.0.


id: POSIX_PC_PATH_MAX
type: constant
doc:
<comment>Description:</comment>
  The maximum number of characters for a full path name. Available as of PHP 8.3.0.


id: POSIX_PC_PIPE_BUF
type: constant
doc:
<comment>Description:</comment>
  The maximum number of bytes that can be written to a pipe in one operation. Available as of PHP
  8.3.0.


id: POSIX_RLIMIT_AS
type: constant
doc:
<comment>Description:</comment>
  The maximum size of the process's address space in bytes. See also PHP's memory_limit
  configuration directive.


id: POSIX_RLIMIT_CORE
type: constant
doc:
<comment>Description:</comment>
  The maximum size of a core file. If the limit is set to 0, no core file will be generated.


id: POSIX_RLIMIT_CPU
type: constant
doc:
<comment>Description:</comment>
  The maximum amount of CPU time that the process can use, in seconds. When the soft limit is hit, a
  <return>SIGXCPU</return> signal will be sent, which can be caught with <strong>pcntl_signal()</strong>. Depending on the operating
  system, additional <return>SIGXCPU</return> signals may be sent each second until the hard limit is hit, at which
  point an uncatchable <return>SIGKILL</return> signal is sent.
  
  See also <strong>set_time_limit()</strong>.


id: POSIX_RLIMIT_DATA
type: constant
doc:
<comment>Description:</comment>
  The maximum size of the process's data segment, in bytes. It is extremely unlikely that this will
  have any effect on the execution of PHP unless an extension is in use that calls <strong>brk()</strong> or <strong>sbrk()</strong>.


id: POSIX_RLIMIT_KQUEUES
type: constant
doc:
<comment>Description:</comment>
  The maximum number of kqueues this user id is allowed to create (FreeBSD). Available as of PHP
  8.1.0.


id: POSIX_RLIMIT_LOCKS
type: constant
doc:
<comment>Description:</comment>
  The maximum number of locks that the process can create. This is only supported on extremely old
  Linux kernels.


id: POSIX_RLIMIT_MSGQUEUE
type: constant
doc:
<comment>Description:</comment>
  The maximum number of bytes that can be allocated for POSIX message queues. PHP does not ship with
  support for POSIX message queues, so this limit will not have any effect unless you are using an
  extension that implements that support.


id: POSIX_RLIMIT_NICE
type: constant
doc:
<comment>Description:</comment>
  The maximum value to which the process can be reniced to. The value that will be used will be <return>20 -
  limit</return>, as resource limit values cannot be negative.


id: POSIX_RLIMIT_NOFILE
type: constant
doc:
<comment>Description:</comment>
  A value one greater than the maximum file descriptor number that can be opened by this process.


id: POSIX_RLIMIT_NPROC
type: constant
doc:
<comment>Description:</comment>
  The maximum number of processes (and/or threads, on some operating systems) that can be created
  for the real user ID of the process.


id: POSIX_RLIMIT_NPTS
type: constant
doc:
<comment>Description:</comment>
  The maximum number of pseudo-terminals this user id is allowed to create (FreeBSD). Available as
  of PHP 8.1.0.


id: POSIX_RLIMIT_RTPRIO
type: constant
doc:
<comment>Description:</comment>
  The maximum real time priority that can be set via the <strong>sched_setscheduler()</strong> and <strong>sched_setparam()</strong>
  system calls.


id: POSIX_RLIMIT_RTTIME
type: constant
doc:
<comment>Description:</comment>
  The maximum amount of CPU time, in microseconds, that the process can consume without making a
  blocking system call if it is using real time scheduling.


id: POSIX_RLIMIT_SIGPENDING
type: constant
doc:
<comment>Description:</comment>
  The maximum number of signals that can be queued for the real user ID of the process.


id: POSIX_SC_ARG_MAX
type: constant
doc:
<comment>Description:</comment>
  The maximum number of bytes the arguments (and environment variables) can have. Available as of
  PHP 8.3.0.


id: POSIX_SC_NPROCESSORS_CONF
type: constant
doc:
<comment>Description:</comment>
  The number of cpus configured system wise. Available as of PHP 8.3.0.


id: POSIX_SC_NPROCESSORS_ONLN
type: constant
doc:
<comment>Description:</comment>
  The number of cpus currently active system wise. Available as of PHP 8.3.0.


id: POSIX_SC_PAGESIZE
type: constant
doc:
<comment>Description:</comment>
  The number of bytes of the current page. Available as of PHP 8.3.0.


id: PREG_BACKTRACK_LIMIT_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se backtrack limit foi esgotado.
  
  5.2.0


id: PREG_BAD_UTF8_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se o último erro foi causado por informação deformada em UTF-8
  (somente quando usado a regex em modo UTF-8).
  
  5.2.0


id: PREG_BAD_UTF8_OFFSET_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se o offset não correspondeu ao início de um válido code point
  UTF-8 (somente quando executando uma regex em  modo UTF-8).
  
  5.3.0


id: PREG_INTERNAL_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se houve um erro interno na PCRE.
  
  5.2.0


id: PREG_JIT_STACKLIMIT_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado por <strong>preg_last_error()</strong> se a última função PCRE falhou por falta de JIT stack space.
  
  7.0.0


id: PREG_NO_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se não haver erros.
  
  5.2.0


id: PREG_PATTERN_ORDER
type: constant
doc:
<comment>Description:</comment>
  Ordena os resultados de modo que $matches[0] seja um array de todas as combinações do padrão.
  $matches[1] é um array de strings combinadas pelo primeiro subpadrão, e assim por diante. Esta
  flag é somente usada com <strong>preg_match_all()</strong>.


id: PREG_RECURSION_LIMIT_ERROR
type: constant
doc:
<comment>Description:</comment>
  Retornado pela <strong>preg_last_error()</strong> se recursion limit foi esgotado.
  
  5.2.0


id: PREG_SET_ORDER
type: constant
doc:
<comment>Description:</comment>
  Ordena os resultados de modo que $matches[0] seja um array do primeiro conjunto de combinações,
  $matches[1] é um array do segundo conjunto de combinações, e assim por diante. Esta flag é somente
  usada com <strong>preg_match_all()</strong>.


id: PREG_SPLIT_DELIM_CAPTURE
type: constant
doc:
<comment>Description:</comment>
  Esta flag congigura <strong>preg_split()</strong> para capturar expressões entre parênteses em padrões delimitados.


id: PREG_SPLIT_NO_EMPTY
type: constant
doc:
<comment>Description:</comment>
  Esta flag configura <strong>preg_split()</strong> para retornar apenas pedaços não vazios.


id: PREG_SPLIT_OFFSET_CAPTURE
type: constant
doc:
<comment>Description:</comment>
  Esta flag configura que em cada acerto, o offset da string anexante também seja retornado. Observe
  que isto modifica os valores retornados em array, onde cada elemento é um array associativo
  consistido de strings encontradas no offset 0 e o offset da string objeto estará no offset 1. Esta
  flag somente é utilizada por <strong>preg_split()</strong>.


id: PREG_UNMATCHED_AS_NULL
type: constant
doc:
<comment>Description:</comment>
  Esta flag informa a <strong>preg_match()</strong> e <strong>preg_match_all()</strong> para incluir subpadrões não combinados em
  $matches como <info>null</info>. Sem essa flag, subpadrões sem combinação são reportados como strings vazias,
  como se fosse combinações vazias. Informar essa flag permite diferenciar entre esses dois casos.
  
  7.2.0


id: PSFS_ERR_FATAL
type: constant
doc:
<comment>Description:</comment>
  <return>Código de Retorno</return> indicando que o filtro no espaço do usuário encontrou um erro não recuperável
  (ex.: dados inválidos recebidos).


id: PSFS_FEED_ME
type: constant
doc:
<comment>Description:</comment>
  <return>Código de Retorno</return> indicando que o filtro no espaço do usuário não retornou buckets em <strong>$out</strong> (i.e.
  No data available).


id: PSFS_PASS_ON
type: constant
doc:
<comment>Description:</comment>
  <return>Código de Retorno</return> indicando que o filtro no espaço do usuário retornou buckets em <strong>$out</strong>.


id: PSpell\Config
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces a <return>pspell config</return> resource as of PHP 8.1.0.


id: PSpell\Dictionary
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces a <return>pspell</return> resource as of PHP 8.1.0.


id: PTHREADS_ALLOW_HEADERS
type: constant
doc:
<comment>Description:</comment>
  Allow new Threads to send headers to standard output (normally prohibited)


id: PTHREADS_INHERIT_ALL
type: constant
doc:
<comment>Description:</comment>
  The default options for all Threads, causes pthreads to copy the environment when new Threads are
  started


id: ParentIterator
type: class
doc:
<comment>Description:</comment>
  This extended <class>FilterIterator</class> allows a recursive iteration using <class>RecursiveIteratorIterator</class> that
  only shows those elements which have children.


id: ParentIterator::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs a ParentIterator
  
  Constructs a <class>ParentIterator</class> on an iterator.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>RecursiveIterator</info>  <strong>$iterator</strong>  The iterator being constructed upon.


id: ParentIterator::accept
type: function
doc:
<comment>Description:</comment>
  Determines acceptability
  
  Determines if the current element has children.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if the current element is acceptable, otherwise <info>false</info>.

<comment>See Also:</comment>
   * ParentIterator::hasChildren
   * FilterIterator::accept


id: ParentIterator::getChildren
type: function
doc:
<comment>Description:</comment>
  Retorna os filhos do iterador interno de um ParentIterator
  
  Retorna os filhos do iterador interno contidos em um ParentIterator.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>ParentIterator</info>  Um <info>object</info>.


id: ParentIterator::hasChildren
type: function
doc:
<comment>Description:</comment>
  Verifica se o elemento atual do iterador interno tem ou não filhos
  
  Verifica se o elemento atual do iterador interno tem filhos.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: ParentIterator::next
type: function
doc:
<comment>Description:</comment>
  Avança o iterador
  
  Avança o iterador.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: ParentIterator::rewind
type: function
doc:
<comment>Description:</comment>
  Recomeça o iterador
  
  Recomeça o iterador.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\ErrorInfo
type: class
doc:
<comment>Description:</comment>
  The class represents detailed error information as supplied by Parle\Parser::errorInfo


id: Parle\INTERNAL_UTF32
type: constant
doc:
<comment>Description:</comment>
  Flag whether the internal UTF-32 support is compiled in. Available since parle 0.7.2.


id: Parle\Lexer
type: class
doc:
<comment>Description:</comment>
  Single state lexer class. Lexemes can be defined on the fly. If the particular lexer instance is
  meant to be used with <class>Parle\Parser</class>, the token IDs need to be taken from there. Otherwise,
  arbitrary token IDs can be supplied. This lexer can give a certain performance advantage over
  <class>Parle\RLexer</class>, if no multiple states are required. Note, that <class>Parle\RParser</class> is not compatible with
  this lexer.


id: Parle\Lexer::advance
type: function
doc:
<comment>Description:</comment>
  Process next lexer rule
  
  Processes the next rule and prepares the resulting token data.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::build
type: function
doc:
<comment>Description:</comment>
  Finalize the lexer rule set
  
  Rules, previously added with Parle\Lexer::push are finalized. This method call has to be done
  after all the necessary rules was pushed. The rule set becomes read only. The lexing can begin.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::callout
type: function
doc:
<comment>Description:</comment>
  Define token callback
  
  Define a callback to be invoked once lexer encounters a particular token.

<comment>Param:</comment>
  <info>int</info>       <strong>$id</strong>        Token id.
  <info>callable</info>  <strong>$callback</strong>  Callable to be invoked. The callable doesn't receive any arguments and its
                       return value is ignored.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::consume
type: function
doc:
<comment>Description:</comment>
  Pass the data for processing
  
  Consume the data for lexing.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  Data to be lexed.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::dump
type: function
doc:
<comment>Description:</comment>
  Dump the state machine
  
  Dump the current state machine to stdout.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::getToken
type: function
doc:
<comment>Description:</comment>
  Retrieve the current token
  
  Retrieve the current token.

<comment>Return:</comment>
  <info>Parle\Token</info>  Returns an instance of <class>Parle\Token</class>.


id: Parle\Lexer::insertMacro
type: function
doc:
<comment>Description:</comment>
  Insert regex macro
  
  Insert a regex macro, that can be later used as a shortcut and included in other regular
  expressions.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>   Name of the macros.
  <info>string</info>  <strong>$regex</strong>  Regular expression.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::push
type: function
doc:
<comment>Description:</comment>
  Add a lexer rule
  
  Push a pattern for lexeme recognition.

<comment>Param:</comment>
  <info>string</info>  <strong>$regex</strong>  Regular expression used for token matching.
  <info>int</info>     <strong>$id</strong>     Token id. If the lexer instance is meant to be used standalone, this can be an
                  arbitrary number. If the lexer instance is going to be passed to the parser, it
                  has to be an id returned by Parle\Parser::tokenid.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Lexer::reset
type: function
doc:
<comment>Description:</comment>
  Reset lexer
  
  Reset lexing optionally supplying the desired offset.

<comment>Param:</comment>
  <info>int</info>  <strong>$pos</strong>  Reset position.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser
type: class
doc:
<comment>Description:</comment>
  Parser class. Rules can be defined on the fly. Once finalized, a <class>Parle\Lexer</class> instance is required
  to deliver the token stream.


id: Parle\Parser::advance
type: function
doc:
<comment>Description:</comment>
  Process next parser rule
  
  Process next parser rule.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::build
type: function
doc:
<comment>Description:</comment>
  Finalize the grammar rules
  
  Any tokens and grammar rules previously added are finalized. The rule set becomes readonly and the
  parser is ready to start.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::consume
type: function
doc:
<comment>Description:</comment>
  Consume the data for processing
  
  Consume the data for parsing.

<comment>Param:</comment>
  <info>string</info>       <strong>$data</strong>   Data to be parsed.
  <info>Parle\Lexer</info>  <strong>$lexer</strong>  A lexer object containing the lexing rules prepared for the particular
                       grammar.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::dump
type: function
doc:
<comment>Description:</comment>
  Dump the grammar
  
  Dump the current grammar to stdout.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::errorInfo
type: function
doc:
<comment>Description:</comment>
  Retrieve the error information
  
  Retrieve the error information in case Parle\Parser::action returned the error action.

<comment>Return:</comment>
  <info>Parle\ErrorInfo</info>  Returns an instance of <class>Parle\ErrorInfo</class>.


id: Parle\Parser::left
type: function
doc:
<comment>Description:</comment>
  Declare a token with left-associativity
  
  Declare a terminal with left associativity.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::nonassoc
type: function
doc:
<comment>Description:</comment>
  Declare a token with no associativity
  
  Declare a terminal, that cannot appear more than once in the row.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::precedence
type: function
doc:
<comment>Description:</comment>
  Declare a precedence rule
  
  Declares a precedence rule for a fictitious terminal symbol. This rule can be later used in the
  specific grammar rules.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::push
type: function
doc:
<comment>Description:</comment>
  Add a grammar rule
  
  Push a grammar rule. The production id returned can be used later in the parsing process to
  identify the rule matched.

<comment>Param:</comment>
  <info>string</info>  <strong>$name</strong>  Rule name.
  <info>string</info>  <strong>$rule</strong>  The rule to be added. The syntax is Bison compatible.

<comment>Return:</comment>
  <info>int</info>  Returns <info>int</info> representing the rule index.


id: Parle\Parser::reset
type: function
doc:
<comment>Description:</comment>
  Reset parser state
  
  Reset parser state using the given token id.

<comment>Param:</comment>
  <info>int</info>  <strong>$tokenId</strong>  Token id.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::right
type: function
doc:
<comment>Description:</comment>
  Declare a token with right-associativity
  
  Declare a terminal with right associativity.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::sigil
type: function
doc:
<comment>Description:</comment>
  Retrieve a matching part of a rule
  
  Retrieve a part of the match by a rule. This method is equivalent to the pseudo variable
  functionality in Bison.

<comment>Param:</comment>
  <info>int</info>  <strong>$idx</strong>  Match index, zero based.

<comment>Return:</comment>
  <info>string</info>  Returns a <info>string</info> with the matched part.


id: Parle\Parser::sigilCount
type: function
doc:
<comment>Description:</comment>
  Number of elements in matched rule
  
  Get number of elements in the matched rule.

<comment>Return:</comment>
  <info>int</info>  Returns <info>int</info>


id: Parle\Parser::sigilName
type: function
doc:
<comment>Description:</comment>
  Retrieve a rule or token name
  
  Retrieve a partial rule name or token name corresponding to the sigil index.

<comment>Param:</comment>
  <info>int</info>  <strong>$idx</strong>  Match index, zero based.

<comment>Return:</comment>
  <info>string</info>  Returns a <info>string</info> with the matched part.


id: Parle\Parser::token
type: function
doc:
<comment>Description:</comment>
  Declare a token
  
  Declare a terminal to be used in the grammar.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Parser::tokenId
type: function
doc:
<comment>Description:</comment>
  Get token id
  
  Retrieve the id of the named token.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Name of the token as used in Parle\Parser::token.

<comment>Return:</comment>
  <info>int</info>  Returns <info>int</info> representing the token id.


id: Parle\Parser::trace
type: function
doc:
<comment>Description:</comment>
  Trace the parser operation
  
  Retrieve the current parser operation description. This can be especially useful for studying the
  parser and to optimize the grammar.

<comment>Return:</comment>
  <info>string</info>  Returns a <info>string</info> with the trace information.


id: Parle\Parser::validate
type: function
doc:
<comment>Description:</comment>
  Validate input
  
  Validate an input string. The string is parsed internally, thus this method is useful for the
  quick input validation.

<comment>Param:</comment>
  <info>string</info>       <strong>$data</strong>   String to be validated.
  <info>Parle\Lexer</info>  <strong>$lexer</strong>  A lexer object containing the lexing rules prepared for the particular
                       grammar.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>bool</info> witnessing whether the input chimes or not with the defined rules.


id: Parle\RLexer
type: class
doc:
<comment>Description:</comment>
  Multistate lexer class. Lexemes can be defined on the fly. If the particular lexer instance is
  meant to be used with <class>Parle\RParser</class>, the token IDs need to be taken from there. Otherwise,
  arbitrary token IDs can be supplied. Note, that <class>Parle\Parser</class> is not compatible with this lexer.


id: Parle\RLexer::build
type: function
doc:
<comment>Description:</comment>
  Finalize the lexer rule set
  
  Rules, previously added with Parle\RLexer::push are finalized. This method call has to be done
  after all the necessary rules was pushed. The rule set becomes read only. The lexing can begin.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\RLexer::getToken
type: function
doc:
<comment>Description:</comment>
  Retrieve the current token
  
  Retrive the current token.

<comment>Return:</comment>
  <info>Parle\Token</info>  Returns an instance of <class>Parle\Token</class>.


id: Parle\RLexer::push
type: function
doc:
<comment>Description:</comment>
  Add a lexer rule
  
  Push a pattern for lexeme recognition.
  
  A 'start state' and 'exit state' can be specified by using a suitable signature.

<comment>Param:</comment>
  <info>string</info>  <strong>$regex</strong>     Regular expression used for token matching.
  <info>int</info>     <strong>$id</strong>        Token id. If the lexer instance is meant to be used standalone, this can be an
                     arbitrary number. If the lexer instance is going to be passed to the parser, it
                     has to be an id returned by Parle\RParser::tokenid.
  <info>string</info>  <strong>$state</strong>     State name. If '*' is used as start state, then the rule is applied to all
                     lexer states.
  <info>string</info>  <strong>$newState</strong>  New state name, after the rule was applied.
                     
                     If '.' is specified as the exit state, then the lexer state is unchanged when
                     that rule matches. An exit state with '&gt;' before the name means push. Use
                     the signature without id for either continuation or to start matching, when a
                     continuation or recursion is required.
                     
                     If '\<' is specified as exit state, it means pop. In that case, the signature containing the id can be used to identify the match. Note that even in the case an id is specified, the rule will finish first when all the previous pushes popped.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\RLexer::pushState
type: function
doc:
<comment>Description:</comment>
  Push a new start state
  
  This lexer type can have more than one state machine. This allows you to lex different tokens
  depending on context, thus allowing simple parsing to take place. Once a state pushed, it can be
  used with a suitable Parle\RLexer::push signature variant.

<comment>Param:</comment>
  <info>string</info>  <strong>$state</strong>  Name of the state.

<comment>Return:</comment>
  <info>int</info>  


id: Parle\RParser
type: class
doc:
<comment>Description:</comment>
  Parser class. Rules can be defined on the fly. Once finalized, a <class>Parle\RLexer</class> instance is required
  to deliver the token stream.


id: Parle\RParser::advance
type: function
doc:
<comment>Description:</comment>
  Process next parser rule
  
  Prosess next parser rule.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\RParser::consume
type: function
doc:
<comment>Description:</comment>
  Consume the data for processing
  
  Consume the data for parsing.

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>   Data to be parsed.
  <info></info>        <strong>$lexer</strong>  A lexer object containing the lexing rules prepared for the particular grammar.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\RParser::errorInfo
type: function
doc:
<comment>Description:</comment>
  Retrieve the error information
  
  Retrieve the error information in case Parle\RParser::action returned the error action.

<comment>Return:</comment>
  <info>Parle\ErrorInfo</info>  Returns an instance of <class>Parle\ErrorInfo</class>.


id: Parle\RParser::precedence
type: function
doc:
<comment>Description:</comment>
  Declare a precedence rule
  
  Declares a precedence rule for a fictious terminal symbol. This rule can be later used in the
  specific grammar rules.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Token name.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\RParser::tokenId
type: function
doc:
<comment>Description:</comment>
  Get token id
  
  Retrieve the id of the named token.

<comment>Param:</comment>
  <info>string</info>  <strong>$tok</strong>  Name of the token as used in Parle\RParser::token.

<comment>Return:</comment>
  <info>int</info>  Returns <info>int</info> representing the token id.


id: Parle\RParser::trace
type: function
doc:
<comment>Description:</comment>
  Trace the parser operation
  
  Retrieve the current parser operation description. This can be especially useful to study the
  parser and to optimize the grammar.

<comment>Return:</comment>
  <info>string</info>  Returns a <info>string</info> with the trace information.


id: Parle\RParser::validate
type: function
doc:
<comment>Description:</comment>
  Validate input
  
  Validate an input string. The string is parsed internally, thus this method is useful for the
  quick input validation.

<comment>Param:</comment>
  <info>string</info>        <strong>$data</strong>   String to be validated.
  <info>Parle\RLexer</info>  <strong>$lexer</strong>  A lexer object containing the lexing rules prepared for the particular
                        grammar.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>bool</info> whitnessing whether the input chimes or not with the defined rules.


id: Parle\Stack
type: class
doc:
<comment>Description:</comment>
  <class>Parle\Stack</class> is a LIFO stack. The elements are inserted and removed only from one end.


id: Parle\Stack::pop
type: function
doc:
<comment>Description:</comment>
  Pop an item from the stack

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Stack::push
type: function
doc:
<comment>Description:</comment>
  Push an item into the stack

<comment>Param:</comment>
  <info>mixed</info>  <strong>$item</strong>  Variable to be pushed.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Parle\Token
type: class
doc:
<comment>Description:</comment>
  This class represents a token. Lexer returns instances of this class.


id: PgSql\Connection
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces a <return>pgsql link</return> resource as of PHP 8.1.0.


id: PgSql\Lob
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces a <return>pgsql large object</return> resource as of PHP 8.1.0.


id: PgSql\Result
type: class
doc:
<comment>Description:</comment>
  A fully opaque class which replaces a <return>pgsql result</return> resource as of PHP 8.1.0.


id: Phar
type: class
doc:
<comment>Description:</comment>
  The Phar class provides a high-level interface to accessing and creating phar archives.


id: Phar::COMPRESSED
type: constant
doc:
<comment>Description:</comment>
  0x0000F000
  
  bitmask that can be used with file flags to determine if any compression is present


id: Phar::OPENSSL
type: constant
doc:
<comment>Description:</comment>
  signature with OpenSSL public/private key pair.  This is a true, asymmetric key signature.


id: Phar::PHP
type: constant
doc:
<comment>Description:</comment>
  used to instruct the mimeoverrides parameter of <strong>Phar::webPhar()</strong> that the extension should be
  parsed as a PHP file


id: Phar::PHPS
type: constant
doc:
<comment>Description:</comment>
  used to instruct the mimeoverrides parameter of <strong>Phar::webPhar()</strong> that the extension should be
  parsed as a PHP source file through <strong>highlight_file()</strong>


id: Phar::__construct
type: function
doc:
<comment>Description:</comment>
  Construct a Phar archive object

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>  Path to an existing Phar archive or to-be-created archive. The file name's
                          extension must contain .phar.
  <info>int</info>          <strong>$flags</strong>     Flags to pass to parent class <class>RecursiveDirectoryIterator</class>.
  <info>string|null</info>  <strong>$alias</strong>     Alias with which this Phar archive should be referred to in calls to
                          stream functionality.


id: Phar::addEmptyDir
type: function
doc:
<comment>Description:</comment>
  Add an empty directory to the phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  With this method, an empty directory is created with path <return>dirname</return>. This method is similar to
  <strong>ZipArchive::addEmptyDir()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$directory</strong>  The name of the empty directory to create in the phar archive

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>PharData::addEmptyDir()</strong>
   * <strong>Phar::addFile()</strong>
   * <strong>Phar::addFromString()</strong>


id: Phar::addFile
type: function
doc:
<comment>Description:</comment>
  Add a file from the filesystem to the phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  With this method, any file or URL can be added to the phar archive.  If the optional second
  parameter <strong>$localName</strong> is a <info>string</info>, the file will be stored in the archive with that name, otherwise
  the <return>file</return> parameter is used as the path to store within the archive.  URLs must have a localname or
  an exception is thrown. This method is similar to <strong>ZipArchive::addFile()</strong>.

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>   Full or relative path to a file on disk to be added to the phar archive.
  <info>string|null</info>  <strong>$localName</strong>  Path that the file will be stored in the archive.

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>Phar::offsetSet()</strong>
   * <strong>PharData::addFile()</strong>
   * <strong>Phar::addFromString()</strong>
   * <strong>Phar::addEmptyDir()</strong>


id: Phar::addFromString
type: function
doc:
<comment>Description:</comment>
  Add a file from a string to the phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  With this method, any string can be added to the phar archive. The file will be stored in the
  archive with <return>localname</return> as its path.  This method is similar to <strong>ZipArchive::addFromString()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  Path that the file will be stored in the archive.
  <info>string</info>  <strong>$contents</strong>   The file contents to store

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>Phar::offsetSet()</strong>
   * <strong>PharData::addFromString()</strong>
   * <strong>Phar::addFile()</strong>
   * <strong>Phar::addEmptyDir()</strong>


id: Phar::apiVersion
type: function
doc:
<comment>Description:</comment>
  Returns the api version
  
  Return the API version of the phar file format that will be used when creating phars.  The Phar
  extension supports reading API version 1.0.0 or newer.  API version 1.1.0 is required for SHA-256
  and SHA-512 hash, and API version 1.1.1 is required to store empty directories.

<comment>Return:</comment>
  <info>string</info>  The API version string as in <return>"1.0.0"</return>.


id: Phar::buildFromDirectory
type: function
doc:
<comment>Description:</comment>
  Construct a phar archive from the files within a directory
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Populate a phar archive from directory contents.  The optional second parameter is a regular
  expression (pcre) that is used to exclude files. Any filename that matches the regular expression
  will be included, all others will be excluded.  For more fine-grained control, use
  <strong>Phar::buildFromIterator()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$directory</strong>  The full or relative path to the directory that contains all files to add to
                      the archive.
  <info>string</info>  <strong>$pattern</strong>    An optional pcre regular expression that is used to filter the list of files.
                      Only file paths matching the regular expression will be included in the
                      archive.

<comment>Return:</comment>
  <info>array</info>  <strong>Phar::buildFromDirectory()</strong> returns an associative array mapping internal path of file to
         the full path of the file on the filesystem.

<comment>See Also:</comment>
   * <strong>Phar::buildFromIterator()</strong>


id: Phar::buildFromIterator
type: function
doc:
<comment>Description:</comment>
  Construct a phar archive from an iterator
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Populate a phar archive from an iterator.  Two styles of iterators are supported, iterators that
  map the filename within the phar to the name of a file on disk, and iterators like
  DirectoryIterator that return SplFileInfo objects.  For iterators that return SplFileInfo objects,
  the second parameter is required.

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>       Any iterator that either associatively maps phar file to location or
                               returns SplFileInfo objects
  <info>string|null</info>  <strong>$baseDirectory</strong>  For iterators that return SplFileInfo objects, the portion of each
                               file's full path to remove when adding to the phar archive

<comment>Return:</comment>
  <info>array</info>  <strong>Phar::buildFromIterator()</strong> returns an associative array mapping internal path of file to the
         full path of the file on the filesystem.

<comment>See Also:</comment>
   * <strong>Phar::buildFromDirectory()</strong>


id: Phar::canCompress
type: function
doc:
<comment>Description:</comment>
  Returns whether phar extension supports compression using either zlib or bzip2
  
  This should be used to test whether compression is possible prior to loading a phar archive
  containing compressed files.

<comment>Param:</comment>
  <info>int</info>  <strong>$compression</strong>  Either <return>Phar::GZ</return> or <return>Phar::BZ2</return> can be used to test whether compression is
                     possible with a specific compression algorithm (zlib or bzip2).

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if compression/decompression is available, <info>false</info> if not.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::convertToExecutable()</strong>
   * <strong>Phar::convertToData()</strong>


id: Phar::canWrite
type: function
doc:
<comment>Description:</comment>
  Returns whether phar extension supports writing and creating phars
  
  This static method determines whether write access has been disabled in the system php.ini via the
  phar.readonly ini variable.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if write access is enabled, <info>false</info> if it is disabled.

<comment>See Also:</comment>
   * phar.readonly
   * <strong>Phar::isWritable()</strong>


id: Phar::compress
type: function
doc:
<comment>Description:</comment>
  Compresses the entire Phar archive using Gzip or Bzip2 compression
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  For tar-based and phar-based phar archives, this method compresses the entire archive using gzip
  compression or bzip2 compression.  The resulting file can be processed with the gunzip
  command/bunzip command, or accessed directly and transparently with the Phar extension.
  
  For Zip-based phar archives, this method fails with an exception. The zlib extension must be
  enabled to compress with gzip compression, the bzip2 extension must be enabled in order to
  compress with bzip2 compression. As with all functionality that modifies the contents of a phar,
  the phar.readonly INI variable must be off in order to succeed.
  
  In addition, this method automatically renames the archive, appending <return>.gz</return>, <return>.bz2</return> or removing the
  extension if passed <return>Phar::NONE</return> to remove compression.  Alternatively, a file extension may be
  specified with the second parameter.

<comment>Param:</comment>
  <info>int</info>          <strong>$compression</strong>  Compression must be one of <return>Phar::GZ</return>, <return>Phar::BZ2</return> to add compression, or
                             <return>Phar::NONE</return> to remove compression.
  <info>string|null</info>  <strong>$extension</strong>    By default, the extension is <return>.phar.gz</return> or <return>.phar.bz2</return> for compressing phar
                             archives, and <return>.phar.tar.gz</return> or <return>.phar.tar.bz2</return> for compressing tar
                             archives.  For decompressing, the default file extensions are <return>.phar</return> and
                             <return>.phar.tar</return>.

<comment>Return:</comment>
  <info>Phar|null</info>  Returns a <class>Phar</class> object, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>


id: Phar::compressFiles
type: function
doc:
<comment>Description:</comment>
  Compresses all files in the current Phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  For tar-based phar archives, this method throws a <class>BadMethodCallException</class>, as compression of
  individual files within a tar archive is not supported by the file format.  Use <strong>Phar::compress()</strong>
  to compress an entire tar-based phar archive.
  
  For Zip-based and phar-based phar archives, this method compresses all files in the Phar archive
  using the specified compression. The zlib  or bzip2 extensions must be enabled to take advantage
  of this feature.  In addition, if any files are already compressed using bzip2/zlib compression,
  the respective extension must be enabled in order to decompress the files prior to re-compressing.
  As with all functionality that modifies the contents of a phar, the phar.readonly INI variable
  must be off in order to succeed.

<comment>Param:</comment>
  <info>int</info>  <strong>$compression</strong>  Compression must be one of <return>Phar::GZ</return>, <return>Phar::BZ2</return> to add compression, or
                     <return>Phar::NONE</return> to remove compression.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>


id: Phar::convertToData
type: function
doc:
<comment>Description:</comment>
  Convert a phar archive to a non-executable tar or zip file
  
  This method is used to convert an executable phar archive to either a tar or zip file.  To make
  the tar or zip non-executable, the phar stub and phar alias files are removed from the newly
  created archive.
  
  If no changes are specified, this method throws a <class>BadMethodCallException</class> if the archive is in phar
  file format.  For archives in tar or zip file format, this method converts the archive to a
  non-executable archive.
  
  If successful, the method creates a new archive on disk and returns a <class>PharData</class> object.  The old
  archive is not removed from disk, and should be done manually after the process has finished.

<comment>Param:</comment>
  <info>int|null</info>     <strong>$format</strong>       This should be one of <return>Phar::TAR</return> or <return>Phar::ZIP</return>.  If set to <info>null</info>, the
                             existing file format will be preserved.
  <info>int|null</info>     <strong>$compression</strong>  This should be one of <return>Phar::NONE</return> for no whole-archive compression,
                             <return>Phar::GZ</return> for zlib-based compression, and <return>Phar::BZ2</return> for bzip-based
                             compression.
  <info>string|null</info>  <strong>$extension</strong>    This parameter is used to override the default file extension for a
                             converted archive.  Note that <return>.phar</return> cannot be used anywhere in the
                             filename for a non-executable tar or zip archive.
                             
                             If converting to a tar-based phar archive, the default extensions are
                             <return>.tar</return>, <return>.tar.gz</return>, and <return>.tar.bz2</return> depending on specified compression. For
                             zip-based archives, the default extension is <return>.zip</return>.

<comment>Return:</comment>
  <info>PharData|null</info>  The method returns a <class>PharData</class> object on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>Phar::convertToExecutable()</strong>
   * <strong>PharData::convertToExecutable()</strong>
   * <strong>PharData::convertToData()</strong>


id: Phar::convertToExecutable
type: function
doc:
<comment>Description:</comment>
  Convert a phar archive to another executable phar archive file format
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This method is used to convert a phar archive to another file format.  For instance, it can be
  used to create a tar-based executable phar archive from a zip-based executable phar archive, or
  from an executable phar archive in the phar file format.  In addition, it can be used to apply
  whole-archive compression to a tar or phar-based archive.
  
  If no changes are specified, this method throws a <class>BadMethodCallException</class>.
  
  If successful, the method creates a new archive on disk and returns a <class>Phar</class> object.  The old
  archive is not removed from disk, and should be done manually after the process has finished.

<comment>Param:</comment>
  <info>int|null</info>     <strong>$format</strong>       This should be one of <return>Phar::PHAR</return>, <return>Phar::TAR</return>, or <return>Phar::ZIP</return>.  If set to
                             <info>null</info>, the existing file format will be preserved.
  <info>int|null</info>     <strong>$compression</strong>  This should be one of <return>Phar::NONE</return> for no whole-archive compression,
                             <return>Phar::GZ</return> for zlib-based compression, and <return>Phar::BZ2</return> for bzip-based
                             compression.
  <info>string|null</info>  <strong>$extension</strong>    This parameter is used to override the default file extension for a
                             converted archive.  Note that all zip- and tar-based phar archives must
                             contain <return>.phar</return> in their file extension in order to be processed as a
                             phar archive.
                             
                             If converting to a phar-based archive, the default extensions are
                             <return>.phar</return>, <return>.phar.gz</return>, or <return>.phar.bz2</return> depending on the specified compression.
                             For tar-based phar archives, the default extensions are <return>.phar.tar</return>,
                             <return>.phar.tar.gz</return>, and <return>.phar.tar.bz2</return>.  For zip-based phar archives, the
                             default extension is <return>.phar.zip</return>.

<comment>Return:</comment>
  <info>Phar|null</info>  The method returns a <class>Phar</class> object on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>Phar::convertToData()</strong>
   * <strong>PharData::convertToExecutable()</strong>
   * <strong>PharData::convertToData()</strong>


id: Phar::copy
type: function
doc:
<comment>Description:</comment>
  Copy a file internal to the phar archive to another new file within the phar
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Copy a file internal to the phar archive to another new file within the phar. This is an
  object-oriented alternative to using <strong>copy()</strong> with the phar stream wrapper.

<comment>Param:</comment>
  <info>string</info>  <strong>$from</strong>  
  <info>string</info>  <strong>$to</strong>    

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is safer to encase method call in a try/catch block and
        assume success if no exception is thrown.


id: Phar::count
type: function
doc:
<comment>Description:</comment>
  Returns the number of entries (files) in the Phar archive

<comment>Param:</comment>
  <info>int</info>  <strong>$mode</strong>  <strong>$mode</strong> is an integer value specifying the counting mode to be used. By default, it is
              set to <info>COUNT_NORMAL</info>, which counts only the number of items in the archive that have
              not been deleted or hidden. When set to <info>COUNT_RECURSIVE</info>, it counts all items in the
              archive, including those that have been deleted or hidden.

<comment>Return:</comment>
  <info>int</info>  The number of files contained within this phar, or <return>0</return> (the number zero) if none.


id: Phar::createDefaultStub
type: function
doc:
<comment>Description:</comment>
  Create a phar-file format specific stub
  
  This method is intended for creation of phar-file format-specific stubs, and is not intended for
  use with tar- or zip-based phar archives.
  
  Phar archives contain a bootstrap loader, or <return>stub</return> written in PHP that is executed when the archive
  is executed in PHP either via include:  ]]> or by simple execution:
  
  This method provides a simple and easy method to create a stub that will run a startup file from
  the phar archive.  In addition, different files can be specified for running the phar archive from
  the command line versus through a web server.  The loader stub also calls
  <strong>Phar::interceptFileFuncs()</strong> to allow easy bundling of a PHP application that accesses the file
  system.  If the phar extension is not present, the loader stub will extract the phar archive to a
  temporary directory and then operate on the files.  A shutdown function erases the temporary files
  on exit.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$index</strong>     Relative path within the phar archive to run if accessed on the
                          command-line
  <info>string|null</info>  <strong>$webIndex</strong>  Relative path within the phar archive to run if accessed through a web
                          browser

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the contents of a customized bootstrap loader (stub) that
          allows the created Phar archive to work with or without the Phar extension enabled.

<comment>See Also:</comment>
   * <strong>Phar::setStub()</strong>
   * <strong>Phar::getStub()</strong>


id: Phar::decompress
type: function
doc:
<comment>Description:</comment>
  Decompresses the entire Phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  For tar-based and phar-based phar archives, this method decompresses the entire archive.
  
  For Zip-based phar archives, this method fails with an exception. The zlib extension must be
  enabled to decompress an archive compressed with gzip compression, and the bzip2 extension must be
  enabled in order to decompress an archive compressed with bzip2 compression. As with all
  functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in
  order to succeed.
  
  In addition, this method automatically changes the file extension of the archive, <return>.phar</return> by default
  for phar archives, or <return>.phar.tar</return> for tar-based phar archives. Alternatively, a file extension may
  be specified with the second parameter.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$extension</strong>  For decompressing, the default file extensions are <return>.phar</return> and <return>.phar.tar</return>.
                           Use this parameter to specify another file extension.  Be aware that all
                           executable phar archives must contain <return>.phar</return> in their filename.

<comment>Return:</comment>
  <info>Phar|null</info>  A <class>Phar</class> object is returned on success, and <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>


id: Phar::decompressFiles
type: function
doc:
<comment>Description:</comment>
  Decompresses all files in the current Phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  For tar-based phar archives, this method throws a <class>BadMethodCallException</class>, as compression of
  individual files within a tar archive is not supported by the file format.  Use <strong>Phar::compress()</strong>
  to compress an entire tar-based phar archive.
  
  For Zip-based and phar-based phar archives, this method decompresses all files in the Phar
  archive. The zlib  or bzip2 extensions must be enabled to take advantage of this feature if any
  files are compressed using bzip2/zlib compression. As with all functionality that modifies the
  contents of a phar, the phar.readonly INI variable must be off in order to succeed.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>


id: Phar::delMetadata
type: function
doc:
<comment>Description:</comment>
  Deletes the global metadata of the phar
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Deletes the global metadata of the phar

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>Phar::getMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>


id: Phar::delete
type: function
doc:
<comment>Description:</comment>
  Delete a file within a phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Delete a file within an archive.  This is the functional equivalent of calling <strong>unlink()</strong> on the
  stream wrapper equivalent, as shown in the example below.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  Path within an archive to the file to delete.

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>PharData::delete()</strong>
   * <strong>Phar::unlinkArchive()</strong>


id: Phar::extractTo
type: function
doc:
<comment>Description:</comment>
  Extract the contents of a phar archive to a directory
  
  Extract all files within a phar archive to disk.  Extracted files and directories preserve
  permissions as stored in the archive.  The optional parameters allow optional control over which
  files are extracted, and whether existing files on disk can be overwritten. The second parameter
  <strong>$files</strong> can be either the name of a file or directory to extract, or an array of names of files and
  directories to extract.  By default, this method will not overwrite existing files, the third
  parameter can be set to true to enable overwriting of files. This method is similar to
  <strong>ZipArchive::extractTo()</strong>.

<comment>Param:</comment>
  <info>string</info>             <strong>$directory</strong>  Path to extract the given <strong>$files</strong> to
  <info>array|string|null</info>  <strong>$files</strong>      The name of a file or directory to extract, or an array of
                                 files/directories to extract, <info>null</info> to skip this param
  <info>bool</info>               <strong>$overwrite</strong>  Set to <info>true</info> to enable overwriting existing files

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>PharData::extractTo()</strong>


id: Phar::getAlias
type: function
doc:
<comment>Description:</comment>
  Get the alias for Phar
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>string|null</info>  Returns the alias or <info>null</info> if there's no alias.


id: Phar::getMetadata
type: function
doc:
<comment>Description:</comment>
  Returns phar archive meta-data
  
  Retrieve archive meta-data.  Meta-data can be any PHP variable that can be serialized.

<comment>Return:</comment>
  <info>mixed</info>  Any PHP value that can be serialized and is stored as meta-data for the Phar archive, or
         <info>null</info> if no meta-data is stored.

<comment>See Also:</comment>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::delMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>


id: Phar::getModified
type: function
doc:
<comment>Description:</comment>
  Return whether phar was modified
  
  This method can be used to determine whether a phar has either had an internal file deleted, or
  contents of a file changed in some way.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if the phar has been modified since opened, <info>false</info> if not.


id: Phar::getPath
type: function
doc:
<comment>Description:</comment>
  Get the real path to the Phar archive on disk
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>string</info>  


id: Phar::getSignature
type: function
doc:
<comment>Description:</comment>
  Return MD5/SHA1/SHA256/SHA512/OpenSSL signature of a Phar archive
  
  Returns the verification signature of a phar archive in a hexadecimal string.

<comment>Return:</comment>
  <info>array|false</info>  Array with the opened archive's signature in <return>hash</return> key and <return>MD5</return>, <return>SHA-1</return>, <return>SHA-256</return>,
               <return>SHA-512</return>, or <return>OpenSSL</return> in <return>hash_type</return>.  This signature is a hash calculated on the entire
               phar's contents, and may be used to verify the integrity of the archive. A valid
               signature is absolutely required of all executable phar archives if the
               phar.require_hash INI variable is set to true. If there is no signature, the function
               returns <info>false</info>.


id: Phar::getStub
type: function
doc:
<comment>Description:</comment>
  Return the PHP loader or bootstrap stub of a Phar archive
  
  Phar archives contain a bootstrap loader, or <return>stub</return> written in PHP that is executed when the archive
  is executed in PHP either via include:  ]]> or by simple execution:

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the contents of the bootstrap loader (stub) of the current
          Phar archive.

<comment>See Also:</comment>
   * <strong>Phar::setStub()</strong>
   * <strong>Phar::createDefaultStub()</strong>


id: Phar::getSupportedCompression
type: function
doc:
<comment>Description:</comment>
  Return array of supported compression algorithms

<comment>Return:</comment>
  <info>array</info>  Returns an array containing any of <return>Phar::GZ</return> or <return>Phar::BZ2</return>, depending on the availability of
         the zlib extension or the bz2 extension.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>


id: Phar::getSupportedSignatures
type: function
doc:
<comment>Description:</comment>
  Return array of supported signature types
  
  Return array of supported signature types

<comment>Return:</comment>
  <info>array</info>  Returns an array containing any of <return>MD5</return>, <return>SHA-1</return>, <return>SHA-256</return>, <return>SHA-512</return>, or <return>OpenSSL</return>.

<comment>See Also:</comment>
   * <strong>Phar::getSignature()</strong>
   * <strong>Phar::setSignatureAlgorithm()</strong>


id: Phar::getVersion
type: function
doc:
<comment>Description:</comment>
  Return version info of Phar archive
  
  Returns the API version of an opened Phar archive.

<comment>Return:</comment>
  <info>string</info>  The opened archive's API version.  This is not to be confused with the API version that
          the loaded phar extension will use to create new phars.  Each Phar archive has the API
          version hard-coded into its manifest.  See Phar file format documentation for more
          information.

<comment>See Also:</comment>
   * <strong>Phar::apiVersion()</strong>


id: Phar::hasMetadata
type: function
doc:
<comment>Description:</comment>
  Returns whether phar has global meta-data
  
  Returns whether phar has global meta-data set.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if meta-data has been set, and <info>false</info> if not.

<comment>See Also:</comment>
   * <strong>Phar::getMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::delMetadata()</strong>


id: Phar::interceptFileFuncs
type: function
doc:
<comment>Description:</comment>
  Instructs phar to intercept fopen, file_get_contents, opendir, and all of the stat-related
  functions
  
  instructs phar to intercept <strong>fopen()</strong>, <strong>readfile()</strong>, <strong>file_get_contents()</strong>, <strong>opendir()</strong>, and all of the
  stat-related functions.  If any of these functions is called from within a phar archive with a
  relative path, the call is modified to access a file within the phar archive.  Absolute paths are
  assumed to be attempts to load external files from the filesystem.
  
  This function makes it possible to run PHP applications designed to run off of a hard disk as a
  phar application.

<comment>Return:</comment>
  <info>void</info>  


id: Phar::isBuffering
type: function
doc:
<comment>Description:</comment>
  Used to determine whether Phar write operations are being buffered, or are flushing directly to
  disk
  
  This method can be used to determine whether a Phar will save changes to disk immediately, or
  whether a call to <strong>Phar::stopBuffering()</strong> is needed to enable saving changes.
  
  Phar write buffering is per-archive, buffering active for the <return>foo.phar</return> Phar archive does not
  affect changes to the <return>bar.phar</return> Phar archive.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the write operations are being buffer, <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>Phar::startBuffering()</strong>
   * <strong>Phar::stopBuffering()</strong>


id: Phar::isCompressed
type: function
doc:
<comment>Description:</comment>
  Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on)
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Returns Phar::GZ or PHAR::BZ2 if the entire phar archive is compressed (.tar.gz/tar.bz and so on).
  Zip-based phar archives cannot be compressed as a file, and so this method will always return
  <info>false</info> if a zip-based phar archive is queried.

<comment>Return:</comment>
  <info>int|false</info>  <return>Phar::GZ</return>, <return>Phar::BZ2</return> or <info>false</info>.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>


id: Phar::isFileFormat
type: function
doc:
<comment>Description:</comment>
  Returns true if the phar archive is based on the tar/phar/zip file format depending on the
  parameter

<comment>Param:</comment>
  <info>int</info>  <strong>$format</strong>  Either <return>Phar::PHAR</return>, <return>Phar::TAR</return>, or <return>Phar::ZIP</return> to test for the format of the archive.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the phar archive matches the file format requested by the parameter

<comment>See Also:</comment>
   * <strong>Phar::convertToExecutable()</strong>
   * <strong>Phar::convertToData()</strong>


id: Phar::isValidPharFilename
type: function
doc:
<comment>Description:</comment>
  Returns whether the given filename is a valid phar filename
  
  Returns whether the given filename is a valid phar filename that will be recognized as a phar
  archive by the phar extension.  This can be used to test a name without having to instantiate a
  phar archive and catch the inevitable Exception that will be thrown if an invalid name is
  specified.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>    The name or full path to a phar archive not yet created
  <info>bool</info>    <strong>$executable</strong>  This parameter determines whether the filename should be treated as a phar
                       executable archive, or a data non-executable archive

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the filename is valid, <info>false</info> if not.


id: Phar::isWritable
type: function
doc:
<comment>Description:</comment>
  Returns true if the phar archive can be modified
  
  This method returns <info>true</info> if <return>phar.readonly</return> is <return>0</return>, and the actual phar archive on disk is not
  read-only.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the phar archive can be modified

<comment>See Also:</comment>
   * <strong>Phar::canWrite()</strong>
   * <strong>PharData::isWritable()</strong>


id: Phar::loadPhar
type: function
doc:
<comment>Description:</comment>
  Loads any phar archive with an alias
  
  This can be used to read the contents of an external Phar archive.  This is most useful for
  assigning an alias to a phar so that subsequent references to the phar can use the shorter alias,
  or for loading Phar archives that only contain data and are not intended for execution/inclusion
  in PHP scripts.

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>  the full or relative path to the phar archive to open
  <info>string|null</info>  <strong>$alias</strong>     The alias that may be used to refer to the phar archive.  Note that many
                          phar archives specify an explicit alias inside the phar archive, and a
                          <class>PharException</class> will be thrown if a new alias is specified in this case.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::mapPhar()</strong>


id: Phar::mapPhar
type: function
doc:
<comment>Description:</comment>
  Reads the currently executed file (a phar) and registers its manifest
  
  This static method can only be used inside a Phar archive's loader stub in order to initialize the
  phar when it is directly executed, or when it is included in another script.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$alias</strong>   The alias that can be used in <return>phar://</return> URLs to refer to this archive, rather
                        than its full path.
  <info>int</info>          <strong>$offset</strong>  Unused variable, here for compatibility with PEAR's PHP_Archive.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::loadPhar()</strong>


id: Phar::mount
type: function
doc:
<comment>Description:</comment>
  Mount an external path or file to a virtual location within the phar archive
  
  Much like the unix file system concept of mounting external devices to paths within the directory
  tree, <strong>Phar::mount()</strong> allows referring to external files and directories as if they were inside of
  an archive.  This allows powerful abstraction such as referring to external configuration files as
  if they were inside the archive.

<comment>Param:</comment>
  <info>string</info>  <strong>$pharPath</strong>      The internal path within the phar archive to use as the mounted path
                         location. This must be a relative path within the phar archive, and must
                         not already exist.
  <info>string</info>  <strong>$externalPath</strong>  A path or URL to an external file or directory to mount within the phar
                         archive

<comment>Return:</comment>
  <info>void</info>  No return.  <class>PharException</class> is thrown on failure.


id: Phar::mungServer
type: function
doc:
<comment>Description:</comment>
  Defines a list of up to 4 $_SERVER variables that should be modified for execution
  
  <strong>Phar::mungServer()</strong> should only be called within the stub of a phar archive.
  
  Defines a list of up to 4 $_SERVER variables that should be modified for execution. Variables that
  can be modified to remove traces of phar execution are <return>REQUEST_URI</return>, <return>PHP_SELF</return>, <return>SCRIPT_NAME</return> and
  <return>SCRIPT_FILENAME</return>.
  
  On its own, this method does nothing.  Only when combined with <strong>Phar::webPhar()</strong> does it take
  effect, and only when the requested file is a PHP file to be parsed.  Note that the <return>PATH_INFO</return> and
  <return>PATH_TRANSLATED</return> variables are always modified.
  
  The original values of variables that are modified are stored in the SERVER array with <return>PHAR_</return>
  prepended, so for instance <return>SCRIPT_NAME</return> would be saved as <return>PHAR_SCRIPT_NAME</return>.

<comment>Param:</comment>
  <info>array</info>  <strong>$variables</strong>  An array of any of the strings <return>REQUEST_URI</return>, <return>PHP_SELF</return>, <return>SCRIPT_NAME</return> and
                     <return>SCRIPT_FILENAME</return>. Other values trigger an exception, and <strong>Phar::mungServer()</strong> is
                     case-sensitive.

<comment>Return:</comment>
  <info>void</info>  No return.

<comment>See Also:</comment>
   * <strong>Phar::webPhar()</strong>
   * <strong>Phar::setStub()</strong>


id: Phar::offsetExists
type: function
doc:
<comment>Description:</comment>
  Determines whether a file exists in the phar
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a Phar archive using array access brackets.
  
  offsetExists() is called whenever <strong>isset()</strong> is called.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  The filename (relative path) to look for in a Phar.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the file exists within the phar, or <info>false</info> if not.

<comment>See Also:</comment>
   * <strong>Phar::offsetGet()</strong>
   * <strong>Phar::offsetSet()</strong>
   * <strong>Phar::offsetUnset()</strong>


id: Phar::offsetGet
type: function
doc:
<comment>Description:</comment>
  Gets a PharFileInfo object for a specific file
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a Phar archive using array access brackets. Phar::offsetGet is used  for retrieving
  files from a Phar archive.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  The filename (relative path) to look for in a Phar.

<comment>Return:</comment>
  <info>SplFileInfo</info>  A <class>PharFileInfo</class> object is returned that can be used to iterate over a file's contents
               or to retrieve information about the current file.

<comment>See Also:</comment>
   * <strong>Phar::offsetExists()</strong>
   * <strong>Phar::offsetSet()</strong>
   * <strong>Phar::offsetUnset()</strong>


id: Phar::offsetSet
type: function
doc:
<comment>Description:</comment>
  Set the contents of an internal file to those of an external file
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a Phar archive using array access brackets.  offsetSet is used for modifying an
  existing file, or adding a new file to a Phar archive.

<comment>Param:</comment>
  <info>string</info>           <strong>$localName</strong>  The filename (relative path) to modify in a Phar.
  <info>resource|string</info>  <strong>$value</strong>      Content of the file.

<comment>Return:</comment>
  <info>void</info>  No return values.

<comment>See Also:</comment>
   * <strong>Phar::offsetExists()</strong>
   * <strong>Phar::offsetGet()</strong>
   * <strong>Phar::offsetUnset()</strong>


id: Phar::offsetUnset
type: function
doc:
<comment>Description:</comment>
  Remove a file from a phar
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a Phar archive using array access brackets.  offsetUnset is used for deleting an
  existing file, and is called by the <strong>unset()</strong> language construct.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  The filename (relative path) to modify in a Phar.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::offsetExists()</strong>
   * <strong>Phar::offsetGet()</strong>
   * <strong>Phar::offsetSet()</strong>
   * <strong>Phar::unlinkArchive()</strong>
   * <strong>Phar::delete()</strong>


id: Phar::running
type: function
doc:
<comment>Description:</comment>
  Returns the full path on disk or full phar URL to the currently executing Phar archive
  
  Returns the full path to the running phar archive.  This is intended for use much like the
  <return>__FILE__</return> magic constant, and only has effect inside an executing phar archive.
  
  Inside the stub of an archive, <strong>Phar::running()</strong> returns <return>""</return>.  Simply use <info>__FILE__</info> to access the
  current running phar inside a stub.

<comment>Param:</comment>
  <info>bool</info>  <strong>$returnPhar</strong>  If <info>false</info>, the full path on disk to the phar archive is returned.  If <info>true</info>, a
                     full phar URL is returned.

<comment>Return:</comment>
  <info>string</info>  Returns the filename if valid, empty string otherwise.


id: Phar::setAlias
type: function
doc:
<comment>Description:</comment>
  Set the alias for the Phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Set the alias for the Phar archive, and write it as the permanent alias for this phar archive.  An
  alias can be used internally to a phar archive to ensure that use of the <return>phar</return> stream wrapper to
  access internal files always works regardless of the location of the phar archive on the
  filesystem.  Another alternative is to rely upon Phar's interception of <strong>include()</strong> or to use
  <strong>Phar::interceptFileFuncs()</strong> and use relative paths.

<comment>Param:</comment>
  <info>string</info>  <strong>$alias</strong>  A shorthand string that this archive can be referred to in <return>phar</return> stream wrapper
                  access.

<comment>Return:</comment>
  <info>bool</info>  

<comment>See Also:</comment>
   * <strong>Phar::__construct()</strong>
   * <strong>Phar::interceptFileFuncs()</strong>


id: Phar::setDefaultStub
type: function
doc:
<comment>Description:</comment>
  Used to set the PHP loader or bootstrap stub of a Phar archive to the default loader
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This method is a convenience method that combines the functionality of <strong>Phar::createDefaultStub()</strong>
  and <strong>Phar::setStub()</strong>.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$index</strong>     Relative path within the phar archive to run if accessed on the
                          command-line
  <info>string|null</info>  <strong>$webIndex</strong>  Relative path within the phar archive to run if accessed through a web
                          browser

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::setStub()</strong>
   * <strong>Phar::createDefaultStub()</strong>


id: Phar::setMetadata
type: function
doc:
<comment>Description:</comment>
  Sets phar archive meta-data
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  <strong>Phar::setMetadata()</strong> should be used to store customized data that describes something about the
  phar archive as a complete entity. <strong>PharFileInfo::setMetadata()</strong> should be used for file-specific
  meta-data. Meta-data can slow down the performance of loading a phar archive if the data is large.
  
  Some possible uses for meta-data include specifying which file within the archive should be used
  to bootstrap the archive, or the location of a file manifest like PEAR's package.xml file.
  However, any useful data that describes the phar archive may be stored.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$metadata</strong>  Any PHP variable containing information to store that describes the phar archive

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::getMetadata()</strong>
   * <strong>Phar::delMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>


id: Phar::setSignatureAlgorithm
type: function
doc:
<comment>Description:</comment>
  Set the signature algorithm for a phar and apply it
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  set the signature algorithm for a phar and apply it.  The signature algorithm must be one of
  <return>Phar::MD5</return>, <return>Phar::SHA1</return>, <return>Phar::SHA256</return>, <return>Phar::SHA512</return>, or <return>Phar::OPENSSL</return>.
  
  Note that all executable phar archives have a signature created automatically, <return>SHA1</return> by default.
  data tar- or zip-based archives (archives created with the <class>PharData</class> class) must have their
  signature created and set explicitly via <strong>Phar::setSignatureAlgorithm()</strong>.

<comment>Param:</comment>
  <info>int</info>          <strong>$algo</strong>        One of <return>Phar::MD5</return>, <return>Phar::SHA1</return>, <return>Phar::SHA256</return>, <return>Phar::SHA512</return>, or
                            <return>Phar::OPENSSL</return>
  <info>string|null</info>  <strong>$privateKey</strong>  The contents of an OpenSSL private key, as extracted from a certificate
                            or OpenSSL key file: setSignatureAlgorithm(Phar::OPENSSL, $pkey);
                            ?> ]]> See phar introduction for instructions on naming and placement of
                            the public key file.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::getSupportedSignatures()</strong>
   * <strong>Phar::getSignature()</strong>


id: Phar::setStub
type: function
doc:
<comment>Description:</comment>
  Used to set the PHP loader or bootstrap stub of a Phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This method is used to add a PHP bootstrap loader stub to a new Phar archive, or to replace the
  loader stub in an existing Phar archive.
  
  The loader stub for a Phar archive is used whenever an archive is included directly as in this
  example:
  
  The loader is not accessed when including a file through the <return>phar</return> stream wrapper like so:

<comment>Param:</comment>
  <info>resource|string</info>  <strong>$stub</strong>    A string or an open stream handle to use as the executable stub for this
                            phar archive.
  <info>int</info>              <strong>$length</strong>  

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::getStub()</strong>
   * <strong>Phar::createDefaultStub()</strong>


id: Phar::startBuffering
type: function
doc:
<comment>Description:</comment>
  Start buffering Phar write operations, do not modify the Phar object on disk
  
  Although technically unnecessary, the <strong>Phar::startBuffering()</strong> method can provide a significant
  performance boost when creating or modifying a Phar archive with a large number of files.
  Ordinarily, every time a file within a Phar archive is created or modified in any way, the entire
  Phar archive will be recreated with the changes.  In this way, the archive will be up-to-date with
  the activity performed on it.
  
  However, this can be unnecessary when simply creating a new Phar archive, when it would make more
  sense to write the entire archive out at once. Similarly, it is often necessary to make a series
  of changes and to ensure that they all are possible before making any changes on disk, similar to
  the relational database concept of transactions.  the <strong>Phar::startBuffering()</strong>/<strong>Phar::stopBuffering()</strong>
  pair of methods is provided for this purpose.
  
  Phar write buffering is per-archive, buffering active for the <return>foo.phar</return> Phar archive does not
  affect changes to the <return>bar.phar</return> Phar archive.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::stopBuffering()</strong>
   * <strong>Phar::isBuffering()</strong>


id: Phar::stopBuffering
type: function
doc:
<comment>Description:</comment>
  Stop buffering write requests to the Phar archive, and save changes to disk
  
  <strong>Phar::stopBuffering()</strong> is used in conjunction with the <strong>Phar::startBuffering()</strong> method.
  <strong>Phar::startBuffering()</strong> can provide a significant performance boost when creating or modifying a
  Phar archive with a large number of files.  Ordinarily, every time a file within a Phar archive is
  created or modified in any way, the entire Phar archive will be recreated with the changes.  In
  this way, the archive will be up-to-date with the activity performed on it.
  
  However, this can be unnecessary when simply creating a new Phar archive, when it would make more
  sense to write the entire archive out at once. Similarly, it is often necessary to make a series
  of changes and to ensure that they all are possible before making any changes on disk, similar to
  the relational database concept of transactions.  The <strong>Phar::startBuffering()</strong>/<strong>Phar::stopBuffering()</strong>
  pair of methods is provided for this purpose.
  
  Phar write buffering is per-archive, buffering active for the <return>foo.phar</return> Phar archive does not
  affect changes to the <return>bar.phar</return> Phar archive.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::startBuffering()</strong>
   * <strong>Phar::isBuffering()</strong>


id: Phar::unlinkArchive
type: function
doc:
<comment>Description:</comment>
  Completely remove a phar archive from disk and from memory
  
  Removes a phar archive from disk and memory.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The path on disk to the phar archive.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::delete()</strong>
   * <strong>Phar::offsetUnset()</strong>


id: Phar::webPhar
type: function
doc:
<comment>Description:</comment>
  Routes a request from a web browser to an internal file within the phar archive
  
  <strong>Phar::webPhar()</strong> serves as <strong>Phar::mapPhar()</strong> for  web-based phars.  This method parses
  $_SERVER['REQUEST_URI'] and  routes a request from a web browser to an internal file within the
  phar archive.   It simulates a web server, routing requests to the correct file, echoing the
  correct  headers and parsing PHP files as needed.  Combined with <strong>Phar::mungServer()</strong>  and
  <strong>Phar::interceptFileFuncs()</strong>, any web application can be used  unmodified from a phar archive.
  
  <strong>Phar::webPhar()</strong> should only be called from the stub of a phar archive (see here for more
  information on what a stub is).

<comment>Param:</comment>
  <info>string|null</info>    <strong>$alias</strong>               The alias that can be used in <return>phar://</return> URLs to refer to this
                                      archive, rather than its full path.
  <info>string|null</info>    <strong>$index</strong>               The location within the phar of the directory index.
  <info>string|null</info>    <strong>$fileNotFoundScript</strong>  The location of the script to run when a file is not found.
                                      This script should output the proper HTTP 404 headers.
  <info>array</info>          <strong>$mimeTypes</strong>           An array mapping additional file extensions to MIME type. If
                                      the default mapping is sufficient, pass an empty array. By
                                      default, these extensions are mapped to these MIME types:
                                      Phar::PHPS, // pass to highlight_file() 'c' => 'text/plain',
                                      'cc' => 'text/plain', 'cpp' => 'text/plain', 'c++' =>
                                      'text/plain', 'dtd' => 'text/plain', 'h' => 'text/plain',
                                      'log' => 'text/plain', 'rng' => 'text/plain', 'txt' =>
                                      'text/plain', 'xsd' => 'text/plain', 'php' => Phar::PHP, //
                                      parse as PHP 'inc' => Phar::PHP, // parse as PHP 'avi' =>
                                      'video/avi', 'bmp' => 'image/bmp', 'css' => 'text/css', 'gif'
                                      => 'image/gif', 'htm' => 'text/html', 'html' => 'text/html',
                                      'htmls' => 'text/html', 'ico' => 'image/x-ico', 'jpe' =>
                                      'image/jpeg', 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg',
                                      'js' => 'application/x-javascript', 'midi' => 'audio/midi',
                                      'mid' => 'audio/midi', 'mod' => 'audio/mod', 'mov' =>
                                      'movie/quicktime', 'mp3' => 'audio/mp3', 'mpg' =>
                                      'video/mpeg', 'mpeg' => 'video/mpeg', 'pdf' =>
                                      'application/pdf', 'png' => 'image/png', 'swf' =>
                                      'application/shockwave-flash', 'tif' => 'image/tiff', 'tiff'
                                      => 'image/tiff', 'wav' => 'audio/wav', 'xbm' => 'image/xbm',
                                      'xml' => 'text/xml',
                                      );
                                      ?> ]]>
  <info>callable|null</info>  <strong>$rewrite</strong>             The rewrites function is passed a string as its only parameter
                                      and must return a <info>string</info> or <info>false</info>.
                                      
                                      If you are using fast-cgi or cgi then the parameter passed to
                                      the function is the value of the  $_SERVER['PATH_INFO']
                                      variable. Otherwise, the parameter passed to the function is
                                      the value of the $_SERVER['REQUEST_URI'] variable.
                                      
                                      If a string is returned it is used as the internal file path.
                                      If <info>false</info> is returned then webPhar() will send a HTTP 403
                                      Denied Code.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::mungServer()</strong>
   * <strong>Phar::interceptFileFuncs()</strong>


id: PharData
type: class
doc:
<comment>Description:</comment>
  The PharData class provides a high-level interface to accessing and creating non-executable tar
  and zip archives.  Because these archives do not contain a stub and cannot be executed by the phar
  extension, it is possible to create and manipulate regular zip and tar files using the PharData
  class even if <return>phar.readonly</return> php.ini setting is <return>1</return>.


id: PharData::__construct
type: function
doc:
<comment>Description:</comment>
  Construct a non-executable tar or zip archive object

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>  Path to an existing tar/zip archive or to-be-created archive
  <info>int</info>          <strong>$flags</strong>     Flags to pass to <class>Phar</class> parent class <class>RecursiveDirectoryIterator</class>.
  <info>string|null</info>  <strong>$alias</strong>     Alias with which this Phar archive should be referred to in calls to
                          stream functionality.
  <info>int</info>          <strong>$format</strong>    One of the file format constants available within the <class>Phar</class> class.


id: PharData::addEmptyDir
type: function
doc:
<comment>Description:</comment>
  Add an empty directory to the tar/zip archive
  
  With this method, an empty directory is created with path <return>dirname</return>. This method is similar to
  <strong>ZipArchive::addEmptyDir()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$directory</strong>  The name of the empty directory to create in the phar archive

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>Phar::addEmptyDir()</strong>
   * <strong>PharData::addFile()</strong>
   * <strong>PharData::addFromString()</strong>


id: PharData::addFile
type: function
doc:
<comment>Description:</comment>
  Add a file from the filesystem to the tar/zip archive
  
  With this method, any file or URL can be added to the tar/zip archive.  If the optional second
  parameter <return>localname</return> is specified, the file will be stored in the archive with that name, otherwise
  the <return>file</return> parameter is used as the path to store within the archive.  URLs must have a localname or
  an exception is thrown. This method is similar to <strong>ZipArchive::addFile()</strong>.

<comment>Param:</comment>
  <info>string</info>       <strong>$filename</strong>   Full or relative path to a file on disk to be added to the phar archive.
  <info>string|null</info>  <strong>$localName</strong>  Path that the file will be stored in the archive.

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>PharData::offsetSet()</strong>
   * <strong>Phar::addFile()</strong>
   * <strong>PharData::addFromString()</strong>
   * <strong>PharData::addEmptyDir()</strong>


id: PharData::addFromString
type: function
doc:
<comment>Description:</comment>
  Add a file from a string to the tar/zip archive
  
  With this method, any string can be added to the tar/zip archive. The file will be stored in the
  archive with <return>localname</return> as its path.  This method is similar to <strong>ZipArchive::addFromString()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  Path that the file will be stored in the archive.
  <info>string</info>  <strong>$contents</strong>   The file contents to store

<comment>Return:</comment>
  <info>void</info>  no return value, exception is thrown on failure.

<comment>See Also:</comment>
   * <strong>PharData::offsetSet()</strong>
   * <strong>Phar::addFromString()</strong>
   * <strong>PharData::addFile()</strong>
   * <strong>PharData::addEmptyDir()</strong>


id: PharData::buildFromDirectory
type: function
doc:
<comment>Description:</comment>
  Construct a tar/zip archive from the files within a directory
  
  Populate a tar/zip archive from directory contents.  The optional second parameter is a regular
  expression (pcre) that is used to exclude files. Any filename that matches the regular expression
  will be included, all others will be excluded.  For more fine-grained control, use
  <strong>PharData::buildFromIterator()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$directory</strong>  The full or relative path to the directory that contains all files to add to
                      the archive.
  <info>string</info>  <strong>$pattern</strong>    An optional pcre regular expression that is used to filter the list of files.
                      Only file paths matching the regular expression will be included in the
                      archive.

<comment>Return:</comment>
  <info>array</info>  <strong>Phar::buildFromDirectory()</strong> returns an associative array mapping internal path of file to
         the full path of the file on the filesystem,  ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::buildFromDirectory()</strong>
   * <strong>PharData::buildFromIterator()</strong>


id: PharData::buildFromIterator
type: function
doc:
<comment>Description:</comment>
  Construct a tar or zip archive from an iterator
  
  Populate a tar or zip archive from an iterator.  Two styles of iterators are supported, iterators
  that map the filename within the tar/zip to the name of a file on disk, and iterators like
  DirectoryIterator that return SplFileInfo objects.  For iterators that return SplFileInfo objects,
  the second parameter is required.

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>       Any iterator that either associatively maps tar/zip file to location
                               or returns SplFileInfo objects
  <info>string|null</info>  <strong>$baseDirectory</strong>  For iterators that return SplFileInfo objects, the portion of each
                               file's full path to remove when adding to the tar/zip archive

<comment>Return:</comment>
  <info>array</info>  <strong>PharData::buildFromIterator()</strong> returns an associative array mapping internal path of file to
         the full path of the file on the filesystem.

<comment>See Also:</comment>
   * <strong>Phar::buildFromIterator()</strong>


id: PharData::compress
type: function
doc:
<comment>Description:</comment>
  Compresses the entire tar/zip archive using Gzip or Bzip2 compression
  
  For tar archives, this method compresses the entire archive using gzip compression or bzip2
  compression.  The resulting file can be processed with the gunzip command/bunzip command, or
  accessed directly and transparently with the Phar extension.
  
  For zip archives, this method fails with an exception. The zlib extension must be enabled to
  compress with gzip compression, the bzip2 extension must be enabled in order to compress with
  bzip2 compression.
  
  In addition, this method automatically renames the archive, appending <return>.gz</return>, <return>.bz2</return> or removing the
  extension if passed <return>Phar::NONE</return> to remove compression.  Alternatively, a file extension may be
  specified with the second parameter.

<comment>Param:</comment>
  <info>int</info>          <strong>$compression</strong>  Compression must be one of <return>Phar::GZ</return>, <return>Phar::BZ2</return> to add compression, or
                             <return>Phar::NONE</return> to remove compression.
  <info>string|null</info>  <strong>$extension</strong>    By default, the extension is <return>.tar.gz</return> or <return>.tar.bz2</return> for compressing a tar,
                             and <return>.tar</return> for decompressing.

<comment>Return:</comment>
  <info>PharData|null</info>  A <class>PharData</class> object is returned on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>Phar::compress()</strong>


id: PharData::compressFiles
type: function
doc:
<comment>Description:</comment>
  Compresses all files in the current tar/zip archive
  
  For tar-based archives, this method throws a <class>BadMethodCallException</class>, as compression of individual
  files within a tar archive is not supported by the file format.  Use <strong>PharData::compress()</strong> to
  compress an entire tar-based archive.
  
  For Zip-based archives, this method compresses all files in the archive using the specified
  compression. The zlib  or bzip2 extensions must be enabled to take advantage of this feature.  In
  addition, if any files are already compressed using bzip2/zlib compression, the respective
  extension must be enabled in order to decompress the files prior to re-compressing.

<comment>Param:</comment>
  <info>int</info>  <strong>$compression</strong>  Compression must be one of <return>Phar::GZ</return>, <return>Phar::BZ2</return> to add compression, or
                     <return>Phar::NONE</return> to remove compression.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>PharData::decompressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>PharData::decompress()</strong>


id: PharData::convertToData
type: function
doc:
<comment>Description:</comment>
  Convert a phar archive to a non-executable tar or zip file
  
  This method is used to convert a non-executable tar or zip archive to another non-executable
  format.
  
  If no changes are specified, this method throws a <class>BadMethodCallException</class>. This method should be
  used to convert a tar archive to zip format or vice-versa.  Although it is possible to simply
  change the compression of a tar archive using this method, it is better to use the
  <strong>PharData::compress()</strong> method for logical consistency.
  
  If successful, the method creates a new archive on disk and returns a <class>PharData</class> object.  The old
  archive is not removed from disk, and should be done manually after the process has finished.

<comment>Param:</comment>
  <info>int|null</info>     <strong>$format</strong>       This should be one of <return>Phar::TAR</return> or <return>Phar::ZIP</return>.  If set to <info>null</info>, the
                             existing file format will be preserved.
  <info>int|null</info>     <strong>$compression</strong>  This should be one of <return>Phar::NONE</return> for no whole-archive compression,
                             <return>Phar::GZ</return> for zlib-based compression, and <return>Phar::BZ2</return> for bzip-based
                             compression.
  <info>string|null</info>  <strong>$extension</strong>    This parameter is used to override the default file extension for a
                             converted archive.  Note that <return>.phar</return> cannot be used anywhere in the
                             filename for a non-executable tar or zip archive.
                             
                             If converting to a tar-based phar archive, the default extensions are
                             <return>.tar</return>, <return>.tar.gz</return>, and <return>.tar.bz2</return> depending on specified compression. For
                             zip-based archives, the default extension is <return>.zip</return>.

<comment>Return:</comment>
  <info>PharData|null</info>  The method returns a <class>PharData</class> object on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>Phar::convertToExecutable()</strong>
   * <strong>Phar::convertToData()</strong>
   * <strong>PharData::convertToExecutable()</strong>


id: PharData::convertToExecutable
type: function
doc:
<comment>Description:</comment>
  Convert a non-executable tar/zip archive to an executable phar archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  This method is used to convert a non-executable tar or zip archive to an executable phar archive.
  Any of the three executable file formats (phar, tar or zip) can be used, and whole-archive
  compression can also be performed.
  
  If no changes are specified, this method throws a <class>BadMethodCallException</class>.
  
  If successful, the method creates a new archive on disk and returns a <class>Phar</class> object.  The old
  archive is not removed from disk, and should be done manually after the process has finished.

<comment>Param:</comment>
  <info>int|null</info>     <strong>$format</strong>       This should be one of <return>Phar::PHAR</return>, <return>Phar::TAR</return>, or <return>Phar::ZIP</return>.  If set to
                             <info>null</info>, the existing file format will be preserved.
  <info>int|null</info>     <strong>$compression</strong>  This should be one of <return>Phar::NONE</return> for no whole-archive compression,
                             <return>Phar::GZ</return> for zlib-based compression, and <return>Phar::BZ2</return> for bzip-based
                             compression.
  <info>string|null</info>  <strong>$extension</strong>    This parameter is used to override the default file extension for a
                             converted archive.  Note that all zip- and tar-based phar archives must
                             contain <return>.phar</return> in their file extension in order to be processed as a
                             phar archive.
                             
                             If converting to a phar-based archive, the default extensions are
                             <return>.phar</return>, <return>.phar.gz</return>, or <return>.phar.bz2</return> depending on the specified compression.
                             For tar-based phar archives, the default extensions are <return>.phar.tar</return>,
                             <return>.phar.tar.gz</return>, and <return>.phar.tar.bz2</return>.  For zip-based phar archives, the
                             default extension is <return>.phar.zip</return>.

<comment>Return:</comment>
  <info>Phar|null</info>  The method returns a <class>Phar</class> object on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>Phar::convertToExecutable()</strong>
   * <strong>Phar::convertToData()</strong>
   * <strong>PharData::convertToData()</strong>


id: PharData::copy
type: function
doc:
<comment>Description:</comment>
  Copy a file internal to the phar archive to another new file within the phar
  
  Copy a file internal to the tar/zip archive to another new file within the same archive. This is
  an object-oriented alternative to using <strong>copy()</strong> with the phar stream wrapper.

<comment>Param:</comment>
  <info>string</info>  <strong>$from</strong>  
  <info>string</info>  <strong>$to</strong>    

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is safer to encase method call in a try/catch block and
        assume success if no exception is thrown.


id: PharData::decompress
type: function
doc:
<comment>Description:</comment>
  Decompresses the entire Phar archive
  
  For tar-based archives, this method decompresses the entire archive.
  
  For Zip-based archives, this method fails with an exception. The zlib extension must be enabled to
  decompress an archive compressed with gzip compression, and the bzip2 extension must be enabled in
  order to decompress an archive compressed with bzip2 compression.
  
  In addition, this method automatically renames the file extension of the archive, <return>.tar</return> by default.
  Alternatively, a file extension may be specified with the <strong>$extension</strong> parameter.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$extension</strong>  For decompressing, the default file extension is <return>.tar</return>. Use this parameter
                           to specify another file extension. Be aware that only executable archives
                           can contain <return>.phar</return> in their filename.

<comment>Return:</comment>
  <info>PharData|null</info>  A <class>PharData</class> object is returned on success, or <info>null</info> on failure.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>PharData::compressFiles()</strong>
   * <strong>PharData::decompressFiles()</strong>


id: PharData::decompressFiles
type: function
doc:
<comment>Description:</comment>
  Decompresses all files in the current zip archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  For tar-based archives, this method throws a <class>BadMethodCallException</class>, as compression of individual
  files within a tar archive is not supported by the file format.  Use <strong>PharData::compress()</strong> to
  compress an entire tar-based archive.
  
  For Zip-based archives, this method decompresses all files in the archive. The zlib  or bzip2
  extensions must be enabled to take advantage of this feature if any files are compressed using
  bzip2/zlib compression.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>PharData::compressFiles()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>PharData::compress()</strong>
   * <strong>PharData::decompress()</strong>


id: PharData::delMetadata
type: function
doc:
<comment>Description:</comment>
  Deletes the global metadata of a zip archive
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Deletes the global metadata of the zip archive

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>Phar::delMetadata()</strong>


id: PharData::delete
type: function
doc:
<comment>Description:</comment>
  Delete a file within a tar/zip archive
  
  Delete a file within an archive.  This is the functional equivalent of calling <strong>unlink()</strong> on the
  stream wrapper equivalent, as shown in the example below.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  Path within an archive to the file to delete.

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>Phar::delete()</strong>


id: PharData::extractTo
type: function
doc:
<comment>Description:</comment>
  Extract the contents of a tar/zip archive to a directory
  
  Extract all files within a tar/zip archive to disk.  Extracted files and directories preserve
  permissions as stored in the archive.  The optional parameters allow optional control over which
  files are extracted, and whether existing files on disk can be overwritten. The second parameter
  <return>files</return> can be either the name of a file or directory to extract, or an array of names of files and
  directories to extract.  By default, this method will not overwrite existing files, the third
  parameter can be set to true to enable overwriting of files. This method is similar to
  <strong>ZipArchive::extractTo()</strong>.

<comment>Param:</comment>
  <info>string</info>             <strong>$directory</strong>  Path to extract the given <return>files</return> to
  <info>array|string|null</info>  <strong>$files</strong>      The name of a file or directory to extract, or an array of
                                 files/directories to extract
  <info>bool</info>               <strong>$overwrite</strong>  Set to <info>true</info> to enable overwriting existing files

<comment>Return:</comment>
  <info>bool</info>  returns <info>true</info> on success, but it is better to check for thrown exception, and assume success
        if none is thrown.

<comment>See Also:</comment>
   * <strong>Phar::extractTo()</strong>


id: PharData::isWritable
type: function
doc:
<comment>Description:</comment>
  Returns true if the tar/zip archive can be modified
  
  This method returns <info>true</info> if the tar/zip archive on disk is not read-only. Unlike
  <strong>Phar::isWritable()</strong>, data-only tar/zip archives can be modified even if <return>phar.readonly</return> is set to <return>1</return>.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the tar/zip archive can be modified

<comment>See Also:</comment>
   * <strong>Phar::canWrite()</strong>
   * <strong>Phar::isWritable()</strong>


id: PharData::offsetSet
type: function
doc:
<comment>Description:</comment>
  Set the contents of a file within the tar/zip to those of an external file or string
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a tar/zip archive using array access brackets.  offsetSet is used for modifying an
  existing file, or adding a new file to a tar/zip archive.

<comment>Param:</comment>
  <info>string</info>           <strong>$localName</strong>  The filename (relative path) to modify in a tar or zip archive.
  <info>resource|string</info>  <strong>$value</strong>      Content of the file.

<comment>Return:</comment>
  <info>void</info>  No return values.

<comment>See Also:</comment>
   * <strong>Phar::offsetSet()</strong>


id: PharData::offsetUnset
type: function
doc:
<comment>Description:</comment>
  Remove a file from a tar/zip archive
  
  This is an implementation of the ArrayAccess interface allowing direct manipulation of the
  contents of a tar/zip archive using array access brackets.  offsetUnset is used for deleting an
  existing file, and is called by the <strong>unset()</strong> language construct.

<comment>Param:</comment>
  <info>string</info>  <strong>$localName</strong>  The filename (relative path) to modify in the tar/zip archive.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::offsetUnset()</strong>


id: PharData::setAlias
type: function
doc:
<comment>Description:</comment>
  Dummy function (Phar::setAlias is not valid for PharData)
  
  Non-executable tar/zip archives cannot have an alias, so this method simply throws an exception.

<comment>Param:</comment>
  <info>string</info>  <strong>$alias</strong>  A shorthand string that this archive can be referred to in <return>phar</return> stream wrapper
                  access.  This parameter is ignored.

<comment>Return:</comment>
  <info>bool</info>  

<comment>See Also:</comment>
   * <strong>Phar::setAlias()</strong>


id: PharData::setDefaultStub
type: function
doc:
<comment>Description:</comment>
  Dummy function (Phar::setDefaultStub is not valid for PharData)
  
  Non-executable tar/zip archives cannot have a stub, so this method simply throws an exception.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$index</strong>     Relative path within the phar archive to run if accessed on the
                          command-line
  <info>string|null</info>  <strong>$webIndex</strong>  Relative path within the phar archive to run if accessed through a web
                          browser

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::setDefaultStub()</strong>


id: PharData::setSignatureAlgorithm
type: function
doc:
<comment>Description:</comment>
  Set the signature algorithm for a phar and apply it
  
  Este
  método requer que a configuração <return>phar.readonly</return> do php.ini seja
  definida como <return>0</return> para funcionar com objetos <class>Phar</class>.
  Caso contrário, uma exceção <class>PharException</class> será lançada.
  
  Set the signature algorithm for a phar and apply it.  The signature algorithm must be one of
  <return>Phar::MD5</return>, <return>Phar::SHA1</return>, <return>Phar::SHA256</return>, <return>Phar::SHA512</return>, or <return>Phar::OPENSSL</return>.

<comment>Param:</comment>
  <info>int</info>  <strong>$algo</strong>  One of <return>Phar::MD5</return>, <return>Phar::SHA1</return>, <return>Phar::SHA256</return>, <return>Phar::SHA512</return>, or <return>Phar::OPENSSL</return>

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Phar::getSupportedSignatures()</strong>
   * <strong>Phar::getSignature()</strong>


id: PharData::setStub
type: function
doc:
<comment>Description:</comment>
  Dummy function (Phar::setStub is not valid for PharData)
  
  Non-executable tar/zip archives cannot have a stub, so this method simply throws an exception.

<comment>Param:</comment>
  <info>string</info>  <strong>$stub</strong>  A string or an open stream handle to use as the executable stub for this phar
                 archive.  This parameter is ignored.
  <info>int</info>     <strong>$len</strong>   

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>Phar::setStub()</strong>


id: PharFileInfo
type: class
doc:
<comment>Description:</comment>
  The PharFileInfo class provides a high-level interface to the contents and attributes of a single
  file within a phar archive.


id: PharFileInfo::__construct
type: function
doc:
<comment>Description:</comment>
  Construct a Phar entry object
  
  This should not be called directly.  Instead, a PharFileInfo object is initialized by calling
  <strong>Phar::offsetGet()</strong> through array access.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The full url to retrieve a file.  If you wish to retrieve the information for
                     the file <return>my/file.php</return> from the phar <return>boo.phar</return>, the entry should be
                     <return>phar://boo.phar/my/file.php</return>.


id: PharFileInfo::chmod
type: function
doc:
<comment>Description:</comment>
  Sets file-specific permission bits
  
  <strong>PharFileInfo::chmod()</strong> allows setting of the executable file permissions bit, as well as read-only
  bits.  Writeable bits are ignored, and set at runtime based on the phar.readonly INI variable. As
  with all functionality that modifies the contents of a phar, the phar.readonly INI variable must
  be off in order to succeed if the file is within a <class>Phar</class> archive.  Files within <class>PharData</class> archives
  do not have this restriction.

<comment>Param:</comment>
  <info>int</info>  <strong>$perms</strong>  permissions (see <strong>chmod()</strong>)

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: PharFileInfo::compress
type: function
doc:
<comment>Description:</comment>
  Compresses the current Phar entry with either zlib or bzip2 compression
  
  This method compresses the file inside the Phar archive using either bzip2 compression or zlib
  compression. The bzip2 or zlib extension must be enabled to take advantage of this feature.  In
  addition, if the file is already compressed, the respective extension must be enabled in order to
  decompress the file.  As with all functionality that modifies the contents of a phar, the
  phar.readonly INI variable must be off in order to succeed if the file is within a <class>Phar</class> archive.
  Files within <class>PharData</class> archives do not have this restriction.

<comment>Param:</comment>
  <info>int</info>  <strong>$compression</strong>  Compression must be <info>Phar::GZ</info> or <info>Phar::BZ2</info>.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>


id: PharFileInfo::decompress
type: function
doc:
<comment>Description:</comment>
  Decompresses the current Phar entry within the phar
  
  This method decompresses the file inside the Phar archive. Depending on how the file is
  compressed, the bzip2 or zlib extensions must be enabled to take advantage of this feature.  As
  with all functionality that modifies the contents of a phar, the phar.readonly INI variable must
  be off in order to succeed if the file is within a <class>Phar</class> archive.  Files within <class>PharData</class> archives
  do not have this restriction.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compressFiles()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>


id: PharFileInfo::delMetadata
type: function
doc:
<comment>Description:</comment>
  Deletes the metadata of the entry
  
  Deletes the metadata of the entry, if any.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if successful, <info>false</info> if the entry had no metadata. As with all functionality
        that modifies the contents of a phar, the phar.readonly INI variable must be off in order to
        succeed if the file is within a <class>Phar</class> archive.  Files within <class>PharData</class> archives do not have
        this restriction.

<comment>See Also:</comment>
   * <strong>PharFileInfo::setMetadata()</strong>
   * <strong>PharFileInfo::hasMetadata()</strong>
   * <strong>PharFileInfo::getMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>
   * <strong>Phar::getMetadata()</strong>


id: PharFileInfo::getCRC32
type: function
doc:
<comment>Description:</comment>
  Returns CRC32 code or throws an exception if CRC has not been verified
  
  This returns the <strong>crc32()</strong> checksum of the file within the Phar archive.

<comment>Return:</comment>
  <info>int</info>  The <strong>crc32()</strong> checksum of the file within the Phar archive.


id: PharFileInfo::getCompressedSize
type: function
doc:
<comment>Description:</comment>
  Returns the actual size of the file (with compression) inside the Phar archive
  
  This returns the size of the file within the Phar archive.  Uncompressed files will return the
  same value for getCompressedSize as they will with <strong>filesize()</strong>

<comment>Return:</comment>
  <info>int</info>  The size in bytes of the file within the Phar archive on disk.

<comment>See Also:</comment>
   * <strong>PharFileInfo::isCompressed()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::compressFiles()</strong>


id: PharFileInfo::getContent
type: function
doc:
<comment>Description:</comment>
  Get the complete file contents of the entry
  
  This function behaves like <strong>file_get_contents()</strong> but for Phar.

<comment>Return:</comment>
  <info>string</info>  Returns the file contents.


id: PharFileInfo::getMetadata
type: function
doc:
<comment>Description:</comment>
  Returns file-specific meta-data saved with a file
  
  Return meta-data that was saved in the Phar archive's manifest for this file.

<comment>Return:</comment>
  <info>mixed</info>  any PHP variable that can be serialized and is stored as meta-data for the file, or <info>null</info> if
         no meta-data is stored.

<comment>See Also:</comment>
   * <strong>PharFileInfo::setMetadata()</strong>
   * <strong>PharFileInfo::hasMetadata()</strong>
   * <strong>PharFileInfo::delMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>
   * <strong>Phar::getMetadata()</strong>


id: PharFileInfo::getPharFlags
type: function
doc:
<comment>Description:</comment>
  Returns the Phar file entry flags
  
  This returns the flags set in the manifest for a Phar.  This will always return <return>0</return> in the current
  implementation.

<comment>Return:</comment>
  <info>int</info>  The Phar flags (always <return>0</return> in the current implementation)


id: PharFileInfo::hasMetadata
type: function
doc:
<comment>Description:</comment>
  Returns the metadata of the entry
  
  Returns the metadata of a file within a phar archive.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>false</info> if no metadata is set or is <info>null</info>, <info>true</info> if metadata is not <info>null</info>

<comment>See Also:</comment>
   * <strong>PharFileInfo::setMetadata()</strong>
   * <strong>PharFileInfo::getMetadata()</strong>
   * <strong>PharFileInfo::delMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>
   * <strong>Phar::getMetadata()</strong>


id: PharFileInfo::isCRCChecked
type: function
doc:
<comment>Description:</comment>
  Returns whether file entry has had its CRC verified
  
  This returns whether a file within a Phar archive has had its CRC verified.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if the file has had its CRC verified, <info>false</info> if not.


id: PharFileInfo::isCompressed
type: function
doc:
<comment>Description:</comment>
  Returns whether the entry is compressed
  
  This returns whether a file is compressed within a Phar archive with either Gzip or Bzip2
  compression.

<comment>Param:</comment>
  <info>int|null</info>  <strong>$compression</strong>  One of <info>Phar::GZ</info> or <info>Phar::BZ2</info>, defaults to any compression.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if the file is compressed within the Phar archive, <info>false</info> if not.

<comment>See Also:</comment>
   * <strong>PharFileInfo::getCompressedSize()</strong>
   * <strong>PharFileInfo::decompress()</strong>
   * <strong>PharFileInfo::compress()</strong>
   * <strong>Phar::decompress()</strong>
   * <strong>Phar::compress()</strong>
   * <strong>Phar::canCompress()</strong>
   * <strong>Phar::isCompressed()</strong>
   * <strong>Phar::getSupportedCompression()</strong>
   * <strong>Phar::decompressFiles()</strong>
   * <strong>Phar::compressFiles()</strong>


id: PharFileInfo::setMetadata
type: function
doc:
<comment>Description:</comment>
  Sets file-specific meta-data saved with a file
  
  <strong>PharFileInfo::setMetadata()</strong> should only be used to store customized data in a file that cannot be
  represented with existing information stored with a file. Meta-data can significantly slow down
  the performance of loading a phar archive if the data is large, or if there are many files
  containing meta-data. It is important to note that file permissions are natively supported inside
  a phar; it is possible to set them with the <strong>PharFileInfo::chmod()</strong> method.  As with all
  functionality that modifies the contents of a phar, the phar.readonly INI variable must be off in
  order to succeed if the file is within a <class>Phar</class> archive.  Files within <class>PharData</class> archives do not have
  this restriction.
  
  Some possible uses for meta-data include passing a user/group that should be set when a file is
  extracted from the phar to disk.  Other uses could include explicitly specifying a MIME type to
  return.  However, any useful data that describes a file, but should not be contained inside of it
  may be stored.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$metadata</strong>  Any PHP variable containing information to store alongside a file

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>PharFileInfo::hasMetadata()</strong>
   * <strong>PharFileInfo::getMetadata()</strong>
   * <strong>PharFileInfo::delMetadata()</strong>
   * <strong>Phar::setMetadata()</strong>
   * <strong>Phar::hasMetadata()</strong>
   * <strong>Phar::getMetadata()</strong>


id: PhpToken
type: class
doc:
<comment>Description:</comment>
  This class provides an alternative to <strong>token_get_all()</strong>. While the function returns tokens either as
  a single-character string, or an array with a token ID, token text and line number,
  <strong>PhpToken::tokenize()</strong> normalizes all tokens into PhpToken objects, which makes code operating on
  tokens more memory efficient and readable.


id: PhpToken::__construct
type: function
doc:
<comment>Description:</comment>
  Returns a new PhpToken object
  
  Returns a new PhpToken object

<comment>Param:</comment>
  <info>int</info>     <strong>$id</strong>    One of the T_* constants (see ), or an ASCII codepoint representing a single-char
                 token.
  <info>string</info>  <strong>$text</strong>  The textual content of the token.
  <info>int</info>     <strong>$line</strong>  The starting line number (1-based) of the token.
  <info>int</info>     <strong>$pos</strong>   The starting position (0-based) in the tokenized string (the number of bytes).

<comment>See Also:</comment>
   * <strong>PhpToken::tokenize()</strong>


id: PhpToken::__toString
type: function
doc:
<comment>Description:</comment>
  Returns the textual content of the token.
  
  Returns the textual content of the token.

<comment>Return:</comment>
  <info>string</info>  A textual content of the token.

<comment>See Also:</comment>
   * <strong>token_name()</strong>


id: PhpToken::getTokenName
type: function
doc:
<comment>Description:</comment>
  Returns the name of the token.
  
  Returns the name of the token.

<comment>Return:</comment>
  <info>string|null</info>  An ASCII character for single-char tokens, or one of T_* constant names for known
               tokens (see ), or <info>null</info> for unknown tokens.

<comment>See Also:</comment>
   * <strong>PhpToken::tokenize()</strong>
   * <strong>token_name()</strong>


id: PhpToken::is
type: function
doc:
<comment>Description:</comment>
  Tells whether the token is of given kind.
  
  Tells whether the token is of given <strong>$kind</strong>.

<comment>Param:</comment>
  <info>int|string|array</info>  <strong>$kind</strong>  Either a single value to match the token's id or textual content, or an
                           array thereof.

<comment>Return:</comment>
  <info>bool</info>  A boolean value whether the token is of given kind.

<comment>See Also:</comment>
   * <strong>token_name()</strong>


id: PhpToken::isIgnorable
type: function
doc:
<comment>Description:</comment>
  Tells whether the token would be ignored by the PHP parser.
  
  Tells whether the token would be ignored by the PHP parser.

<comment>Return:</comment>
  <info>bool</info>  A boolean value whether the token would be ignored by the PHP parser (such as whitespace or
        comments).

<comment>See Also:</comment>
   * <strong>PhpToken::tokenize()</strong>


id: PhpToken::tokenize
type: function
doc:
<comment>Description:</comment>
  Splits given source into PHP tokens, represented by PhpToken objects.
  
  Returns an array of PhpToken objects representing given <strong>$code</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$code</strong>   The PHP source to parse.
  <info>int</info>     <strong>$flags</strong>  Valid flags: <info>TOKEN_PARSE</info> - Recognises the ability to use reserved words in
                  specific contexts.
                  
                  <info>TOKEN_PARSE</info> - Recognises the ability to use reserved words in specific contexts.

<comment>Return:</comment>
  <info>array</info>  An array of PHP tokens represented by instances of PhpToken or its descendants. This method
         returns <info>static[]</info> so that PhpToken can be seamlessly extended.

<comment>See Also:</comment>
   * <strong>token_get_all()</strong>


id: Pool
type: class
doc:
<comment>Description:</comment>
  A Pool is a container for, and controller of, an adjustable number of Workers.
  
  Pooling provides a higher level abstraction of the Worker functionality, including the management
  of references in the way required by pthreads.


id: Pool::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new Pool of Workers
  
  Construct a new pool of workers. Pools lazily create their threads, which means new threads will
  only be spawned when they are required to execute tasks.

<comment>Param:</comment>
  <info>int</info>     <strong>$size</strong>   The maximum number of workers for this pool to create
  <info>string</info>  <strong>$class</strong>  The class for new Workers. If no class is given, then it defaults to the <class>Worker</class>
                  class.
  <info>array</info>   <strong>$ctor</strong>   An array of arguments to be passed to new workers' constructors


id: Pool::collect
type: function
doc:
<comment>Description:</comment>
  Collect references to completed tasks
  
  Allows the pool to collect references determined to be garbage by the optionally given collector.

<comment>Param:</comment>
  <info>Callable</info>  <strong>$collector</strong>  A Callable collector that returns a boolean on whether the task can be
                        collected or not. Only in rare cases should a custom collector need to be
                        used.

<comment>Return:</comment>
  <info>int</info>  The number of remaining tasks in the pool to be collected.


id: Pool::resize
type: function
doc:
<comment>Description:</comment>
  Resize the Pool
  
  Resize the Pool

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>  The maximum number of Workers this Pool can create

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Pool::shutdown
type: function
doc:
<comment>Description:</comment>
  Shutdown all workers
  
  Shuts down all of the workers in the pool. This will block until all submitted tasks have been
  executed.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Pool::submit
type: function
doc:
<comment>Description:</comment>
  Submits an object for execution
  
  Submit the task to the next Worker in the Pool

<comment>Param:</comment>
  <info>Threaded</info>  <strong>$task</strong>  The task for execution

<comment>Return:</comment>
  <info>int</info>  the identifier of the Worker executing the object


id: Pool::submitTo
type: function
doc:
<comment>Description:</comment>
  Submits a task to a specific worker for execution
  
  Submit a task to the specified worker in the pool. The workers are indexed from 0, and will only
  exist if the pool has needed to create them (since threads are lazily spawned).

<comment>Param:</comment>
  <info>int</info>       <strong>$worker</strong>  The worker to stack the task onto, indexed from <return>0</return>.
  <info>Threaded</info>  <strong>$task</strong>    The task for execution.

<comment>Return:</comment>
  <info>int</info>  The identifier of the worker that accepted the task.


id: QuickHashIntHash
type: class
doc:
<comment>Description:</comment>
  This class wraps around a hash containing integer numbers, where the values are also integer
  numbers. Hashes are also available as implementation of the ArrayAccess interface.
  
  Hashes can also be iterated over with <return>foreach</return> as the Iterator interface is implemented as well.
  The order of which elements are returned in is not guaranteed.


id: QuickHashIntHash::CHECK_FOR_DUPES
type: constant
doc:
<comment>Description:</comment>
  If enabled, adding duplicate elements to a set (through either QuickHashIntHash::add or
  QuickHashIntHash::loadFromFile) will result in those elements to be dropped from the set. This
  will take up extra time, so only used when it is required.


id: QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC
type: constant
doc:
<comment>Description:</comment>
  Disables the use of PHP's internal memory manager for internal set structures. With this option
  enabled, internal allocations will not count towards the memory_limit settings.


id: QuickHashIntHash::HASHER_JENKINS1
type: constant
doc:
<comment>Description:</comment>
  This is the default hashing function to turn the integer hashes into bucket list indexes.


id: QuickHashIntHash::HASHER_NO_HASH
type: constant
doc:
<comment>Description:</comment>
  Selects to not use a hashing function, but merely use a modulo to find the bucket list index. This
  is not faster than normal hashing, and gives more collisions.


id: QuickHashIntHash::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new QuickHashIntHash object
  
  This constructor creates a new <class>QuickHashIntHash</class>. The size is the amount of bucket lists to create.
  The more lists there are, the less collisions you will have. Options are also supported.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>     The amount of bucket lists to configure. The number you pass in will be
                 automatically rounded up to the next power of two. It is also automatically limited
                 from <return>64</return> to <return>4194304</return>.
  <info>int</info>  <strong>$options</strong>  The options that you can pass in are: <info>QuickHashIntHash::CHECK_FOR_DUPES</info>, which
                 makes sure no duplicate entries are added to the hash;
                 <info>QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC</info> to not use PHP's internal memory manager as
                 well as one of <info>QuickHashIntHash::HASHER_NO_HASH</info>, <info>QuickHashIntHash::HASHER_JENKINS1</info>
                 or <info>QuickHashIntHash::HASHER_JENKINS2</info>. These last three configure which hashing
                 algorithm to use. All options can be combined using bitmasks.

<comment>Return:</comment>
  <info>unknown</info>  Returns a new <class>QuickHashIntHash</class> object.


id: QuickHashIntHash::add
type: function
doc:
<comment>Description:</comment>
  This method adds a new entry to the hash
  
  This method adds a new entry to the hash, and returns whether the entry was added. Entries are by
  default always added unless <info>QuickHashIntHash::CHECK_FOR_DUPES</info> has been passed when the hash was
  created.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>    The key of the entry to add.
  <info>int</info>  <strong>$value</strong>  The optional value of the entry to add. If no value is specified, <return>1</return> will be used.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was added, and <info>false</info> if the entry was not added.


id: QuickHashIntHash::delete
type: function
doc:
<comment>Description:</comment>
  This method deletes an entry from the hash
  
  This method deletes an entry from the hash, and returns whether the entry was deleted or not.
  Associated memory structures will not be freed immediately, but rather when the hash itself is
  freed.
  
  Elements can not be deleted when the hash is used in an iterator. The method will not throw an
  exception, but simply return <info>false</info> like would happen with any other deletion failure.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to delete.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was deleted, and <info>false</info> if the entry was not deleted.


id: QuickHashIntHash::exists
type: function
doc:
<comment>Description:</comment>
  This method checks whether a key is part of the hash
  
  This method checks whether an entry with the provided key exists in the hash.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to check for whether it exists in the hash.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> when the entry was found, or <info>false</info> when the entry is not found.


id: QuickHashIntHash::get
type: function
doc:
<comment>Description:</comment>
  This method retrieves a value from the hash by its key
  
  This method retrieves a value from the hash by its key.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to retrieve.

<comment>Return:</comment>
  <info>int</info>  The value if the key exists, or <info>null</info> if the key wasn't part of the hash.


id: QuickHashIntHash::getSize
type: function
doc:
<comment>Description:</comment>
  Returns the number of elements in the hash
  
  Returns the number of elements in the hash.

<comment>Return:</comment>
  <info>int</info>  The number of elements in the hash.


id: QuickHashIntHash::loadFromFile
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a file
  
  This factory method creates a new hash from a definition file on disk. The file format consists of
  a signature <return>'QH\0x11\0'</return>, the number of elements as a 32 bit signed integer in system Endianness,
  followed by 32 bit signed integers packed together in the Endianness that the system that the code
  runs on uses. For each hash element there are two 32 bit signed integers stored. The first of each
  element is the key, and the second is the value belonging to the key. An example could be:
  
  QuickHash IntHash file format
  
  QuickHash IntHash file format

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to read the hash from.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the hash, rounded up to the nearest power of two with a maximum
                     limit of <return>4194304</return>.

<comment>Return:</comment>
  <info>QuickHashIntHash</info>  Returns a new <class>QuickHashIntHash</class>.


id: QuickHashIntHash::loadFromString
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a string
  
  This factory method creates a new hash from a definition in a string. The file format consists of
  32 bit signed integers packed together in the Endianness that the system that the code runs on
  uses. For each element there are two 32 bit signed integers stored. The first of each element is
  the key, and the second is the value belonging to the key.

<comment>Param:</comment>
  <info>string</info>  <strong>$contents</strong>  The string containing a serialized format of the hash.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the hash, rounded up to the nearest power of two with a maximum
                     limit of <return>4194304</return>.

<comment>Return:</comment>
  <info>QuickHashIntHash</info>  Returns a new <class>QuickHashIntHash</class>.


id: QuickHashIntHash::saveToFile
type: function
doc:
<comment>Description:</comment>
  This method stores an in-memory hash to disk
  
  This method stores an existing hash to a file on disk, in the same format that
  QuickHashIntHash::loadFromFile can read.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to store the hash in.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: QuickHashIntHash::saveToString
type: function
doc:
<comment>Description:</comment>
  This method returns a serialized version of the hash
  
  This method returns a serialized version of the hash in the same format that
  QuickHashIntHash::loadFromString can read.

<comment>Return:</comment>
  <info>string</info>  This method returns a string containing a serialized format of the hash. Each element is
          stored as a four byte value in the Endianness that the current system uses.


id: QuickHashIntHash::set
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value, or
    adds a new one if the entry doesn't exist
  
  This method tries to update an entry with a new value. In case the entry did not yet exist, it
  will instead add a new entry. It returns whether the entry was added or update. If there are
  duplicate keys, only the first found element will get an updated value. Use
  <info>QuickHashIntHash::CHECK_FOR_DUPES</info> during hash creation to prevent duplicate keys from being part
  of the hash.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>    The key of the entry to add or update.
  <info>int</info>  <strong>$value</strong>  The new value to set the entry with.

<comment>Return:</comment>
  <info>bool</info>  2 if the entry was found and updated, 1 if the entry was newly added or 0 if there was an
        error.


id: QuickHashIntHash::update
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value
  
  This method updates an entry with a new value, and returns whether the entry was update. If there
  are duplicate keys, only the first found element will get an updated value. Use
  <info>QuickHashIntHash::CHECK_FOR_DUPES</info> during hash creation to prevent duplicate keys from being part
  of the hash.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>    The key of the entry to update.
  <info>int</info>  <strong>$value</strong>  The new value to update the entry with.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was found and updated, and <info>false</info> if the entry was not part of the hash
        already.


id: QuickHashIntSet
type: class
doc:
<comment>Description:</comment>
  This class wraps around a set containing integer numbers.
  
  Sets can also be iterated over with <return>foreach</return> as the Iterator interface is implemented as well. The
  order of which elements are returned in is not guaranteed.


id: QuickHashIntSet::CHECK_FOR_DUPES
type: constant
doc:
<comment>Description:</comment>
  If enabled, adding duplicate elements to a set (through either QuickHashIntSet::add or
  QuickHashIntSet::loadFromFile) will result in those elements to be dropped from the set. This will
  take up extra time, so only used when it is required.


id: QuickHashIntSet::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new QuickHashIntSet object
  
  This constructor creates a new <class>QuickHashIntSet</class>. The size is the amount of bucket lists to create.
  The more lists there are, the less collisions you will have. Options are also supported.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>     The amount of bucket lists to configure. The number you pass in will be
                 automatically rounded up to the next power of two. It is also automatically limited
                 from <return>4</return> to <return>4194304</return>.
  <info>int</info>  <strong>$options</strong>  The options that you can pass in are: <info>QuickHashIntSet::CHECK_FOR_DUPES</info>, which makes
                 sure no duplicate entries are added to the set;
                 <info>QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC</info> to not use PHP's internal memory manager as
                 well as one of <info>QuickHashIntSet::HASHER_NO_HASH</info>, <info>QuickHashIntSet::HASHER_JENKINS1</info> or
                 <info>QuickHashIntSet::HASHER_JENKINS2</info>. These last three configure which hashing
                 algorithm to use. All options can be combined using bitmasks.

<comment>Return:</comment>
  <info>unknown</info>  Returns a new <class>QuickHashIntSet</class> object.


id: QuickHashIntSet::add
type: function
doc:
<comment>Description:</comment>
  This method adds a new entry to the set
  
  This method adds a new entry to the set, and returns whether the entry was added. Entries are by
  default always added unless <info>QuickHashIntSet::CHECK_FOR_DUPES</info> has been passed when the set was
  created.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to add.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was added, and <info>false</info> if the entry was not added.


id: QuickHashIntSet::delete
type: function
doc:
<comment>Description:</comment>
  This method deletes an entry from the set
  
  This method deletes an entry from the set, and returns whether the entry was deleted or not.
  Associated memory structures will not be freed immediately, but rather when the set itself is
  freed.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to delete.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was deleted, and <info>false</info> if the entry was not deleted.


id: QuickHashIntSet::exists
type: function
doc:
<comment>Description:</comment>
  This method checks whether a key is part of the set
  
  This method checks whether an entry with the provided key exists in the set.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to check for whether it exists in the set.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> when the entry was found, or <info>false</info> when the entry is not found.


id: QuickHashIntSet::getSize
type: function
doc:
<comment>Description:</comment>
  Returns the number of elements in the set
  
  Returns the number of elements in the set.

<comment>Return:</comment>
  <info>int</info>  The number of elements in the set.


id: QuickHashIntSet::loadFromFile
type: function
doc:
<comment>Description:</comment>
  This factory method creates a set from a file
  
  This factory method creates a new set from a definition file on disk. The file format consists of
  32 bit signed integers packed together in the Endianness that the system that the code runs on
  uses.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to read the set from.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from <return>4</return> to <return>4194304</return>.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the set, rounded up to the nearest power of two with a maximum limit
                     of <return>4194304</return>.

<comment>Return:</comment>
  <info>QuickHashIntSet</info>  Returns a new <class>QuickHashIntSet</class>.


id: QuickHashIntSet::loadFromString
type: function
doc:
<comment>Description:</comment>
  This factory method creates a set from a string
  
  This factory method creates a new set from a definition in a string. The file format consists of
  32 bit signed integers packed together in the Endianness that the system that the code runs on
  uses.

<comment>Param:</comment>
  <info>string</info>  <strong>$contents</strong>  The string containing a serialized format of the set.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from <return>4</return> to <return>4194304</return>.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the set, rounded up to the nearest power of two automatically
                     limited from <return>64</return> to <return>4194304</return>.

<comment>Return:</comment>
  <info>QuickHashIntSet</info>  Returns a new <class>QuickHashIntSet</class>.


id: QuickHashIntSet::saveToFile
type: function
doc:
<comment>Description:</comment>
  This method stores an in-memory set to disk
  
  This method stores an existing set to a file on disk, in the same format that
  QuickHashIntSet::loadFromFile can read.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to store the hash in.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: QuickHashIntSet::saveToString
type: function
doc:
<comment>Description:</comment>
  This method returns a serialized version of the set
  
  This method returns a serialized version of the set in the same format that
  QuickHashIntSet::loadFromString can read.

<comment>Return:</comment>
  <info>string</info>  This method returns a string containing a serialized format of the set. Each element is
          stored as a four byte value in the Endianness that the current system uses.


id: QuickHashIntStringHash
type: class
doc:
<comment>Description:</comment>
  This class wraps around a hash containing integer numbers, where the values are strings. Hashes
  are also available as implementation of the ArrayAccess interface.
  
  Hashes can also be iterated over with <return>foreach</return> as the Iterator interface is implemented as well.
  The order of which elements are returned in is not guaranteed.


id: QuickHashIntStringHash::CHECK_FOR_DUPES
type: constant
doc:
<comment>Description:</comment>
  If enabled, adding duplicate elements to a set (through either QuickHashIntStringHash::add or
  QuickHashIntStringHash::loadFromFile) will result in those elements to be dropped from the set.
  This will take up extra time, so only used when it is required.


id: QuickHashIntStringHash::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new QuickHashIntStringHash object
  
  This constructor creates a new <class>QuickHashIntStringHash</class>. The size is the amount of bucket lists to
  create. The more lists there are, the less collisions you will have. Options are also supported.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>     The amount of bucket lists to configure. The number you pass in will be
                 automatically rounded up to the next power of two. It is also automatically limited
                 from <return>64</return> to <return>4194304</return>.
  <info>int</info>  <strong>$options</strong>  The options that you can pass in are: <info>QuickHashIntStringHash::CHECK_FOR_DUPES</info>,
                 which makes sure no duplicate entries are added to the hash;
                 <info>QuickHashIntStringHash::DO_NOT_USE_ZEND_ALLOC</info> to not use PHP's internal memory
                 manager as well as one of <info>QuickHashIntStringHash::HASHER_NO_HASH</info>,
                 <info>QuickHashIntStringHash::HASHER_JENKINS1</info> or <info>QuickHashIntStringHash::HASHER_JENKINS2</info>.
                 These last three configure which hashing algorithm to use. All options can be
                 combined using bitmasks.

<comment>Return:</comment>
  <info>unknown</info>  Returns a new <class>QuickHashIntStringHash</class> object.


id: QuickHashIntStringHash::add
type: function
doc:
<comment>Description:</comment>
  This method adds a new entry to the hash
  
  This method adds a new entry to the hash, and returns whether the entry was added. Entries are by
  default always added unless <info>QuickHashIntStringHash::CHECK_FOR_DUPES</info> has been passed when the hash
  was created.

<comment>Param:</comment>
  <info>int</info>     <strong>$key</strong>    The key of the entry to add.
  <info>string</info>  <strong>$value</strong>  The value of the entry to add. If a non-string is passed, it will be converted to
                  a string automatically if possible.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was added, and <info>false</info> if the entry was not added.


id: QuickHashIntStringHash::get
type: function
doc:
<comment>Description:</comment>
  This method retrieves a value from the hash by its key
  
  This method retrieves a value from the hash by its key.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  The key of the entry to retrieve.

<comment>Return:</comment>
  <info>mixed</info>  The value if the key exists, or <info>null</info> if the key wasn't part of the hash.


id: QuickHashIntStringHash::loadFromFile
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a file
  
  This factory method creates a new hash from a definition file on disk. The file format consists of
  a signature <return>'QH\0x12\0'</return>, the number of elements as a 32 bit signed integer in system Endianness,
  an unsigned 32 bit integer containing the number of element data to follow in characters. This
  element data contains all the strings. After the header and the strings, the elements follow in
  pairs of two unsigned 32 bit integers where the first one is the key, and the second one the index
  in the element data string. An example could be:
  
  QuickHash IntString file format
  
  QuickHash IntString file format

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to read the hash from.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from <return>4</return> to <return>4194304</return>.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the hash, rounded up to the nearest power of two with a maximum
                     limit of <return>4194304</return>.

<comment>Return:</comment>
  <info>QuickHashIntStringHash</info>  Returns a new <class>QuickHashIntStringHash</class>.


id: QuickHashIntStringHash::loadFromString
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a string
  
  This factory method creates a new hash from a definition in a string. The format is the same as
  the one used in "loadFromFile".

<comment>Param:</comment>
  <info>string</info>  <strong>$contents</strong>  The string containing a serialized format of the hash.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from 4 to 4194304.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the hash, rounded up to the nearest power of two with a maximum
                     limit of 4194304.

<comment>Return:</comment>
  <info>QuickHashIntStringHash</info>  Returns a new QuickHashIntStringHash.


id: QuickHashIntStringHash::saveToFile
type: function
doc:
<comment>Description:</comment>
  This method stores an in-memory hash to disk
  
  This method stores an existing hash to a file on disk, in the same format that loadFromFile() can
  read.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to store the hash in.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: QuickHashIntStringHash::saveToString
type: function
doc:
<comment>Description:</comment>
  This method returns a serialized version of the hash
  
  This method returns a serialized version of the hash in the same format that
  QuickHashIntStringHash::loadFromString can read.

<comment>Return:</comment>
  <info>string</info>  This method returns a string containing a serialized format of the hash. Each element is
          stored as a four byte value in the Endianness that the current system uses.


id: QuickHashIntStringHash::set
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value, or
    adds a new one if the entry doesn't exist
  
  This method tries to update an entry with a new value. In case the entry did not yet exist, it
  will instead add a new entry. It returns whether the entry was added or update. If there are
  duplicate keys, only the first found element will get an updated value. Use
  QuickHashIntStringHash::CHECK_FOR_DUPES during hash creation to prevent duplicate keys from being
  part of the hash.

<comment>Param:</comment>
  <info>int</info>     <strong>$key</strong>    The key of the entry to add or update.
  <info>string</info>  <strong>$value</strong>  The value of the entry to add. If a non-string is passed, it will be converted to
                  a string automatically if possible.

<comment>Return:</comment>
  <info>int</info>  2 if the entry was found and updated, 1 if the entry was newly added or 0 if there was an
       error.


id: QuickHashIntStringHash::update
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value
  
  This method updates an entry with a new value, and returns whether the entry was update. If there
  are duplicate keys, only the first found element will get an updated value. Use
  QuickHashIntStringHash::CHECK_FOR_DUPES during hash creation to prevent duplicate keys from being
  part of the hash.

<comment>Param:</comment>
  <info>int</info>     <strong>$key</strong>    The key of the entry to update.
  <info>string</info>  <strong>$value</strong>  The new value for the entry. If a non-string is passed, it will be converted to a
                  string automatically if possible.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was found and updated, and <info>false</info> if the entry was not part of the hash
        already.


id: QuickHashStringIntHash
type: class
doc:
<comment>Description:</comment>
  This class wraps around a hash containing strings, where the values are integer numbers. Hashes
  are also available as implementation of the ArrayAccess interface.
  
  Hashes can also be iterated over with <return>foreach</return> as the Iterator interface is implemented as well.
  The order of which elements are returned in is not guaranteed.


id: QuickHashStringIntHash::CHECK_FOR_DUPES
type: constant
doc:
<comment>Description:</comment>
  If enabled, adding duplicate elements to a set (through either QuickHashStringIntHash::add or
  QuickHashStringIntHash::loadFromFile) will result in those elements to be dropped from the set.
  This will take up extra time, so only used when it is required.


id: QuickHashStringIntHash::__construct
type: function
doc:
<comment>Description:</comment>
  Creates a new QuickHashStringIntHash object
  
  This constructor creates a new <class>QuickHashStringIntHash</class>. The size is the amount of bucket lists to
  create. The more lists there are, the less collisions you will have. Options are also supported.

<comment>Param:</comment>
  <info>int</info>  <strong>$size</strong>     The amount of bucket lists to configure. The number you pass in will be
                 automatically rounded up to the next power of two. It is also automatically limited
                 from <return>64</return> to <return>4194304</return>.
  <info>int</info>  <strong>$options</strong>  The options that you can pass in are: <info>QuickHashStringIntHash::CHECK_FOR_DUPES</info>,
                 which makes sure no duplicate entries are added to the hash and
                 <info>QuickHashStringIntHash::DO_NOT_USE_ZEND_ALLOC</info> to not use PHP's internal memory
                 manager.

<comment>Return:</comment>
  <info>unknown</info>  Returns a new <class>QuickHashStringIntHash</class> object.


id: QuickHashStringIntHash::add
type: function
doc:
<comment>Description:</comment>
  This method adds a new entry to the hash
  
  This method adds a new entry to the hash, and returns whether the entry was added. Entries are by
  default always added unless <info>QuickHashStringIntHash::CHECK_FOR_DUPES</info> has been passed when the hash
  was created.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>    The key of the entry to add.
  <info>int</info>     <strong>$value</strong>  The value of the entry to add.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was added, and <info>false</info> if the entry was not added.


id: QuickHashStringIntHash::delete
type: function
doc:
<comment>Description:</comment>
  This method deletes an entry from the hash
  
  This method deletes an entry from the hash, and returns whether the entry was deleted or not.
  Associated memory structures will not be freed immediately, but rather when the hash itself is
  freed.
  
  Elements can not be deleted when the hash is used in an iterator. The method will not throw an
  exception, but simply return <info>false</info> like would happen with any other deletion failure.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>  The key of the entry to delete.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was deleted, and <info>false</info> if the entry was not deleted.


id: QuickHashStringIntHash::exists
type: function
doc:
<comment>Description:</comment>
  This method checks whether a key is part of the hash
  
  This method checks whether an entry with the provided key exists in the hash.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>  The key of the entry to check for whether it exists in the hash.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> when the entry was found, or <info>false</info> when the entry is not found.


id: QuickHashStringIntHash::get
type: function
doc:
<comment>Description:</comment>
  This method retrieves a value from the hash by its key
  
  This method retrieves a value from the hash by its key.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>  The key of the entry to retrieve.

<comment>Return:</comment>
  <info>mixed</info>  The value if the key exists, or <info>null</info> if the key wasn't part of the hash.


id: QuickHashStringIntHash::loadFromFile
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a file
  
  This factory method creates a new hash from a definition file on disk. The file format consists of
  a signature <return>'QH\0x21\0'</return>, the number of elements as a 32 bit signed integer in system Endianness,
  an unsigned 32 bit integer containing the number of element data to follow in characters. This
  element data contains all the strings. The follows another signed 32 bit integer containing the
  number of bucket lists.  After the header and the strings, the elements follow. They are ordered
  by bucket list so that the keys don't have to be hashed in order to restore the hash. For each
  bucket list, the following information is stored (all as 32 bit integers): the bucket list index,
  the number of elements in that list, and then in pairs of two unsigned 32 bit integers the
  elements, where the first one is the index into the string list containing the keys, and the
  second one the value.  An example could be:
  
  QuickHash StringIntHash file format
  
  QuickHash IntHash file format

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The filename of the file to read the hash from.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from <return>4</return> to <return>4194304</return>.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is read from the file format (unlike the <class>QuickHashIntHash</class> and
                     <class>QuickHashIntStringHash</class> classes, where it is automatically calculated from the
                     number of entries in the hash.)

<comment>Return:</comment>
  <info>QuickHashStringIntHash</info>  Returns a new <class>QuickHashStringIntHash</class>.


id: QuickHashStringIntHash::loadFromString
type: function
doc:
<comment>Description:</comment>
  This factory method creates a hash from a string
  
  This factory method creates a new hash from a definition in a string. The format is the same as
  the one used in "loadFromFile".

<comment>Param:</comment>
  <info>string</info>  <strong>$contents</strong>  The string containing a serialized format of the hash.
  <info>int</info>     <strong>$size</strong>      The amount of bucket lists to configure. The number you pass in will be
                     automatically rounded up to the next power of two. It is also automatically
                     limited from 4 to 4194304.
  <info>int</info>     <strong>$options</strong>   The same options that the class' constructor takes; except that the size option
                     is ignored. It is automatically calculated to be the same as the number of
                     entries in the hash, rounded up to the nearest power of two with a maximum
                     limit of 4194304.

<comment>Return:</comment>
  <info>QuickHashStringIntHash</info>  Returns a new QuickHashStringIntHash.


id: QuickHashStringIntHash::saveToString
type: function
doc:
<comment>Description:</comment>
  This method returns a serialized version of the hash
  
  This method returns a serialized version of the hash in the same format that
  QuickHashStringIntHash::loadFromString can read.

<comment>Return:</comment>
  <info>string</info>  This method returns a serialized format of an existing hash, in the same format that
          QuickHashStringIntHash::loadFromString can read.


id: QuickHashStringIntHash::set
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value, or
    adds a new one if the entry doesn't exist
  
  This method tries to update an entry with a new value. In case the entry did not yet exist, it
  will instead add a new entry. It returns whether the entry was added or update. If there are
  duplicate keys, only the first found element will get an updated value. Use
  QuickHashStringIntHash::CHECK_FOR_DUPES during hash creation to prevent duplicate keys from being
  part of the hash.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>    The key of the entry to add or update.
  <info>int</info>     <strong>$value</strong>  The value of the entry to add. If a non-string is passed, it will be converted to
                  a string automatically if possible.

<comment>Return:</comment>
  <info>int</info>  2 if the entry was found and updated, 1 if the entry was newly added or 0 if there was an
       error.


id: QuickHashStringIntHash::update
type: function
doc:
<comment>Description:</comment>
  This method updates an entry in the hash with a new value
  
  This method updates an entry with a new value, and returns whether the entry was update. If there
  are duplicate keys, only the first found element will get an updated value. Use
  QuickHashStringIntHash::CHECK_FOR_DUPES during hash creation to prevent duplicate keys from being
  part of the hash.

<comment>Param:</comment>
  <info>string</info>  <strong>$key</strong>    The key of the entry to update.
  <info>int</info>     <strong>$value</strong>  The new value for the entry. If a non-string is passed, it will be converted to a
                  string automatically if possible.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> when the entry was found and updated, and <info>false</info> if the entry was not part of the hash
        already.


id: RADIUS_ACCESS_ACCEPT
type: constant
doc:
<comment>Description:</comment>
  An Access-Accept response to an Access-Request indicating that the RADIUS server authenticated the
  user successfully.


id: RADIUS_ACCESS_CHALLENGE
type: constant
doc:
<comment>Description:</comment>
  An Access-Challenge response to an Access-Request indicating that the RADIUS server requires
  further information in another Access-Request before authenticating the user.


id: RADIUS_ACCESS_REJECT
type: constant
doc:
<comment>Description:</comment>
  An Access-Reject response to an Access-Request indicating that the RADIUS server could not
  authenticate the user.


id: RADIUS_ACCESS_REQUEST
type: constant
doc:
<comment>Description:</comment>
  An Access-Request, used to authenticate a user against a RADIUS server. Access request packets
  must include a <info>RADIUS_NAS_IP_ADDRESS</info> or a <info>RADIUS_NAS_IDENTIFIER</info> attribute, must also include a
  <info>RADIUS_USER_PASSWORD</info>, <info>RADIUS_CHAP_PASSWORD</info> or a <info>RADIUS_STATE</info> attribute, and should include a
  <info>RADIUS_USER_NAME</info> attribute.


id: RADIUS_ACCOUNTING_REQUEST
type: constant
doc:
<comment>Description:</comment>
  An Accounting-Request, used to convey accounting information for a service to the RADIUS server.


id: RADIUS_ACCT_AUTHENTIC
type: constant
doc:
<comment>Description:</comment>
  Accounting authentic, one of: <info>RADIUS_AUTH_RADIUS</info><info>RADIUS_AUTH_LOCAL</info><info>RADIUS_AUTH_REMOTE</info>


id: RADIUS_ACCT_STATUS_TYPE
type: constant
doc:
<comment>Description:</comment>
  Accounting status type, one of: <info>RADIUS_START</info><info>RADIUS_STOP</info><info>RADIUS_ACCOUNTING_ON</info><info>RADIUS_ACCOUNTING_OFF</info>


id: RADIUS_ACCT_TERMINATE_CAUSE
type: constant
doc:
<comment>Description:</comment>
  Accounting terminate cause, one of:
  <info>RADIUS_TERM_USER_REQUEST</info><info>RADIUS_TERM_LOST_CARRIER</info><info>RADIUS_TERM_LOST_SERVICE</info><info>RADIUS_TERM_IDLE_TIMEOUT</info><info>RADIUS_TERM_SESSION_TIMEOUT</info><info>RADIUS_TERM_ADMIN_RESET</info><info>RADIUS_TERM_ADMIN_REBOOT</info><info>RADIUS_TERM_PORT_ERROR</info><info>RADIUS_TERM_NAS_ERROR</info><info>RADIUS_TERM_NAS_REQUEST</info><info>RADIUS_TERM_NAS_REBOOT</info><info>RADIUS_TERM_PORT_UNNEEDED</info><info>RADIUS_TERM_PORT_PREEMPTED</info><info>RADIUS_TERM_PORT_SUSPENDED</info><info>RADIUS_TERM_SERVICE_UNAVAILABLE</info><info>RADIUS_TERM_CALLBACK</info><info>RADIUS_TERM_USER_ERROR</info><info>RADIUS_TERM_HOST_REQUEST</info>


id: RADIUS_CALLBACK_ID
type: constant
doc:
<comment>Description:</comment>
  The Callback-Id attribute. The attribute value is a <info>string</info> containing an implementation-specific
  name of the place to be called.


id: RADIUS_CALLBACK_NUMBER
type: constant
doc:
<comment>Description:</comment>
  The Callback-Number attribute. The attribute value is a <info>string</info> containing the dialing string to
  use for callback.


id: RADIUS_CHAP_PASSWORD
type: constant
doc:
<comment>Description:</comment>
  The Chap-Password attribute. The attribute value is expected to be a <info>string</info> with the first byte
  containing the CHAP identifier, and the subsequent 16 bytes containing the MD5 hash of the CHAP
  identifier, the plaintext password and the CHAP challenge value concatenated together. Note that
  the CHAP challenge value should also be sent separately in a <info>RADIUS_CHAP_CHALLENGE</info> attribute.
  
  Using CHAP passwords


id: RADIUS_CLASS
type: constant
doc:
<comment>Description:</comment>
  The Class attribute. The attribute value is an arbitrary <info>string</info> included in an Access-Accept
  message that should then be sent to the accounting server in Accounting-Request messages, and can
  be set using <strong>radius_put_attr()</strong>.


id: RADIUS_COA_ACK
type: constant
doc:
<comment>Description:</comment>
  A CoA-ACK, sent to the RADIUS server to indicate that the user authorisations have been updated.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_COA_NAK
type: constant
doc:
<comment>Description:</comment>
  A CoA-NAK, sent to the RADIUS server to indicate that the user authorisations could not be
  updated.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_COA_REQUEST
type: constant
doc:
<comment>Description:</comment>
  A CoA-Request, sent from the RADIUS server to indicate that the authorisations within the user
  session have changed. A response must be sent in the form of a CoA-ACK or a CoA-NAK.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_DISCONNECT_ACK
type: constant
doc:
<comment>Description:</comment>
  A Disconnect-ACK, sent to the RADIUS server to indicate that the user session has been terminated.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_DISCONNECT_NAK
type: constant
doc:
<comment>Description:</comment>
  A Disconnect-NAK, sent to the RADIUS server to indicate that the user session could not be
  terminated.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_DISCONNECT_REQUEST
type: constant
doc:
<comment>Description:</comment>
  A Disconnect-Request, sent from the RADIUS server to indicate that the user session must be
  terminated.
  
  This constant is available in PECL radius 1.3.0 and later.


id: RADIUS_FILTER_ID
type: constant
doc:
<comment>Description:</comment>
  The Filter-ID attribute. The attribute value is expected to be an implementation-specific,
  human-readable <info>string</info> of filters, which can be set using <strong>radius_put_attr()</strong>.


id: RADIUS_FRAMED_COMPRESSION
type: constant
doc:
<comment>Description:</comment>
  The Framed-Compression attribute. The attribute value is expected to be an <info>int</info> indicating the
  compression protocol to be used, and can be set using <strong>radius_put_int()</strong>. Possible values include
  these constants: <info>RADIUS_COMP_NONE</info>: No compression<info>RADIUS_COMP_VJ</info>: VJ TCP/IP header
  compression<info>RADIUS_COMP_IPXHDR</info>: IPX header compression<info>RADIUS_COMP_STAC_LZS</info>: Stac-LZS compression
  (added in PECL radius 1.3.0b2)


id: RADIUS_FRAMED_IPX_NETWORK
type: constant
doc:
<comment>Description:</comment>
  The Framed-IPX-Network attribute. The attribute value is an <info>int</info> containing the IPX network to be
  configured for the user, or <return>0xFFFFFFFE</return> to indicate that the RADIUS client should select the
  network, and can be accessed via <strong>radius_cvt_int()</strong>.


id: RADIUS_FRAMED_IP_ADDRESS
type: constant
doc:
<comment>Description:</comment>
  The Framed-IP-Address attribute. The attribute value is expected to be the address of the user's
  network encoded as an <info>int</info>, which can be set using <strong>radius_put_addr()</strong> and retrieved using
  <strong>radius_cvt_addr()</strong>.


id: RADIUS_FRAMED_IP_NETMASK
type: constant
doc:
<comment>Description:</comment>
  The Framed-IP-Netmask attribute. The attribute value is expected to be the netmask of the user's
  network encoded as an <info>int</info>, which can be set using <strong>radius_put_addr()</strong> and retrieved using
  <strong>radius_cvt_addr()</strong>.


id: RADIUS_FRAMED_MTU
type: constant
doc:
<comment>Description:</comment>
  The Framed-MTU attribute. The attribute value is expected to be an <info>int</info> indicating the MTU to be
  configured for the user, and can be set using <strong>radius_put_int()</strong>.


id: RADIUS_FRAMED_PROTOCOL
type: constant
doc:
<comment>Description:</comment>
  The Framed-Protocol attribute. The attribute value is expected to be an <info>int</info> indicating the framing
  to be used for framed access, and can be set using <strong>radius_put_int()</strong>. The possible attribute values
  include these constants: <info>RADIUS_PPP</info><info>RADIUS_SLIP</info><info>RADIUS_ARAP</info><info>RADIUS_GANDALF</info><info>RADIUS_XYLOGICS</info>


id: RADIUS_FRAMED_ROUTE
type: constant
doc:
<comment>Description:</comment>
  The Framed-Route attribute. The attribute value is a <info>string</info> containing an implementation-specific
  set of routes to be configured for the user.


id: RADIUS_FRAMED_ROUTING
type: constant
doc:
<comment>Description:</comment>
  The Framed-Routing attribute. The attribute value is expected to be an <info>int</info> indicating the routing
  method for the user, which can be set using <strong>radius_put_int()</strong>.
  
  Possible values include: <return>0</return>: No routing<return>1</return>: Send routing packets<return>2</return>: Listen for routing packets<return>3</return>: Send
  and listen


id: RADIUS_LOGIN_IP_HOST
type: constant
doc:
<comment>Description:</comment>
  The Login-IP-Host attribute. The attribute value is expected to the IP address to connect the user
  to, encoded as an <info>int</info>, which can be set using <strong>radius_put_addr()</strong>.


id: RADIUS_LOGIN_SERVICE
type: constant
doc:
<comment>Description:</comment>
  The Login-Service attribute. The attribute value is an <info>int</info> indicating the service to connect the
  user to on the login host. The value can be converted to a PHP integer via <strong>radius_cvt_int()</strong>.


id: RADIUS_LOGIN_TCP_PORT
type: constant
doc:
<comment>Description:</comment>
  The Login-TCP-Port attribute. The attribute value is an <info>int</info> indicating the port to connect the
  user to on the login host. The value can be converted to a PHP integer via <strong>radius_cvt_int()</strong>.


id: RADIUS_NAS_IP_ADDRESS
type: constant
doc:
<comment>Description:</comment>
  The NAS-IP-Address attribute. The attribute value is expected to the IP address of the RADIUS
  client encoded as an <info>int</info>, which can be set using <strong>radius_put_addr()</strong>.


id: RADIUS_NAS_PORT
type: constant
doc:
<comment>Description:</comment>
  The NAS-Port attribute. The attribute value is expected to be the physical port of the user on the
  RADIUS client encoded as an <info>int</info>, which can be set using <strong>radius_put_int()</strong>.


id: RADIUS_NAS_PORT_TYPE
type: constant
doc:
<comment>Description:</comment>
  NAS port type, one of:
  <info>RADIUS_ASYNC</info><info>RADIUS_SYNC</info><info>RADIUS_ISDN_SYNC</info><info>RADIUS_ISDN_ASYNC_V120</info><info>RADIUS_ISDN_ASYNC_V110</info><info>RADIUS_VIRTUAL</info><info>RADIUS_PIAFS</info><info>RADIUS_HDLC_CLEAR_CHANNEL</info><info>RADIUS_X_25</info><info>RADIUS_X_75</info><info>RADIUS_G_3_FAX</info><info>RADIUS_SDSL</info><info>RADIUS_ADSL_CAP</info><info>RADIUS_ADSL_DMT</info><info>RADIUS_IDSL</info><info>RADIUS_ETHERNET</info><info>RADIUS_XDSL</info><info>RADIUS_CABLE</info><info>RADIUS_WIRELESS_OTHER</info><info>RADIUS_WIRELESS_IEEE_802_11</info>


id: RADIUS_OPTION_SALT
type: constant
doc:
<comment>Description:</comment>
  When set, this option will result in the attribute value being salt-encrypted.


id: RADIUS_OPTION_TAGGED
type: constant
doc:
<comment>Description:</comment>
  When set, this option will result in the attribute value being tagged with the value of the tag
  parameter.


id: RADIUS_REPLY_MESSAGE
type: constant
doc:
<comment>Description:</comment>
  The Reply-Message attribute. The attribute value is a <info>string</info> containing text that may be displayed
  to the user in response to an access request.


id: RADIUS_SERVICE_TYPE
type: constant
doc:
<comment>Description:</comment>
  The Service-Type attribute. The attribute value indicates the service type the user is requesting,
  and is expected to be an <info>int</info>, which can be set using <strong>radius_put_int()</strong>.
  
  A number of constants are provided to represent the possible values of this attribute. They
  include:
  <info>RADIUS_LOGIN</info><info>RADIUS_FRAMED</info><info>RADIUS_CALLBACK_LOGIN</info><info>RADIUS_CALLBACK_FRAMED</info><info>RADIUS_OUTBOUND</info><info>RADIUS_ADMINISTRATIVE</info><info>RADIUS_NAS_PROMPT</info><info>RADIUS_AUTHENTICATE_ONLY</info><info>RADIUS_CALLBACK_NAS_PROMPT</info>


id: RADIUS_STATE
type: constant
doc:
<comment>Description:</comment>
  The State attribute. The attribute value is an implementation-defined <info>string</info> included in an
  Access-Challenge from a server that must be included in the subsequent Access-Request, and can be
  set using <strong>radius_put_attr()</strong>.


id: RADIUS_USER_NAME
type: constant
doc:
<comment>Description:</comment>
  The User-Name attribute. The attribute value is expected to be a <info>string</info> containing the name of the
  user being authenticated, and can be set using <strong>radius_put_attr()</strong>.


id: RADIUS_USER_PASSWORD
type: constant
doc:
<comment>Description:</comment>
  The User-Password attribute. The attribute value is expected to be a <info>string</info> containing the user's
  password, and can be set using <strong>radius_put_attr()</strong>. This value will be obfuscated on transmission as
  described in section 5.2 of RFC 2865.


id: RADIUS_VENDOR_MICROSOFT
type: constant
doc:
<comment>Description:</comment>
  Microsoft specific vendor attributes (RFC 2548), one of:
  <info>RADIUS_MICROSOFT_MS_CHAP_RESPONSE</info><info>RADIUS_MICROSOFT_MS_CHAP_ERROR</info><info>RADIUS_MICROSOFT_MS_CHAP_PW_1</info><info>RADIUS_MICROSOFT_MS_CHAP_PW_2</info><info>RADIUS_MICROSOFT_MS_CHAP_LM_ENC_PW</info><info>RADIUS_MICROSOFT_MS_CHAP_NT_ENC_PW</info><info>RADIUS_MICROSOFT_MS_MPPE_ENCRYPTION_POLICY</info><info>RADIUS_MICROSOFT_MS_MPPE_ENCRYPTION_TYPES</info><info>RADIUS_MICROSOFT_MS_RAS_VENDOR</info><info>RADIUS_MICROSOFT_MS_CHAP_DOMAIN</info><info>RADIUS_MICROSOFT_MS_CHAP_CHALLENGE</info><info>RADIUS_MICROSOFT_MS_CHAP_MPPE_KEYS</info><info>RADIUS_MICROSOFT_MS_BAP_USAGE</info><info>RADIUS_MICROSOFT_MS_LINK_UTILIZATION_THRESHOLD</info><info>RADIUS_MICROSOFT_MS_LINK_DROP_TIME_LIMIT</info><info>RADIUS_MICROSOFT_MS_MPPE_SEND_KEY</info><info>RADIUS_MICROSOFT_MS_MPPE_RECV_KEY</info><info>RADIUS_MICROSOFT_MS_RAS_VERSION</info><info>RADIUS_MICROSOFT_MS_OLD_ARAP_PASSWORD</info><info>RADIUS_MICROSOFT_MS_NEW_ARAP_PASSWORD</info><info>RADIUS_MICROSOFT_MS_ARAP_PASSWORD_CHANGE_REASON</info><info>RADIUS_MICROSOFT_MS_FILTER</info><info>RADIUS_MICROSOFT_MS_ACCT_AUTH_TYPE</info><info>RADIUS_MICROSOFT_MS_ACCT_EAP_TYPE</info><info>RADIUS_MICROSOFT_MS_CHAP2_RESPONSE</info><info>RADIUS_MICROSOFT_MS_CHAP2_SUCCESS</info><info>RADIUS_MICROSOFT_MS_CHAP2_PW</info><info>RADIUS_MICROSOFT_MS_PRIMARY_DNS_SERVER</info><info>RADIUS_MICROSOFT_MS_SECONDARY_DNS_SERVER</info><info>RADIUS_MICROSOFT_MS_PRIMARY_NBNS_SERVER</info><info>RADIUS_MICROSOFT_MS_SECONDARY_NBNS_SERVER</info><info>RADIUS_MICROSOFT_MS_ARAP_CHALLENGE</info>


id: RADIUS_VENDOR_SPECIFIC
type: constant
doc:
<comment>Description:</comment>
  The Vendor-Specific attribute. In general, vendor attribute values should be set using
  <strong>radius_put_vendor_addr()</strong>, <strong>radius_put_vendor_attr()</strong>, <strong>radius_put_vendor_int()</strong> and
  <strong>radius_put_vendor_string()</strong>, rather than directly.
  
  This constant is mostly useful when interpreting vendor specific attributes in responses from a
  RADIUS server; when a vendor specific attribute is received, the <strong>radius_get_vendor_attr()</strong> function
  should be used to access the vendor ID, attribute type and attribute value.


id: READLINE_LIB
type: constant
doc:
<comment>Description:</comment>
  A biblioteca que é usada para suporte à readline; atualmente pode ser <return>readline</return> ou <return>libedit</return>.


id: RNP_ENCRYPT_NOWRAP
type: constant
doc:
<comment>Description:</comment>
  Allows encryption of signed message. Message is not wrapped into literal data packet.


id: RNP_KEYSTORE_KBX
type: constant
doc:
<comment>Description:</comment>
  Keystore format "KBX". For public keys only. A keybox is a file format used to store public keys
  along with meta information and indices.


id: RNP_KEY_EXPORT_SUBKEYS
type: constant
doc:
<comment>Description:</comment>
  If primary key is being exported, all subkeys will be exported too.


id: RNP_KEY_REMOVE_SUBKEYS
type: constant
doc:
<comment>Description:</comment>
  If primary key is being deleted, all of its subkeys will be removed too.


id: RNP_LOAD_SAVE_PERMISSIVE
type: constant
doc:
<comment>Description:</comment>
  Allows to ignore bad signature/key/subkey packets during key import.


id: RNP_LOAD_SAVE_PUBLIC_KEYS
type: constant
doc:
<comment>Description:</comment>
  Load or save public keys only. Can be OR-ed with <info>RNP_LOAD_SAVE_SECRET_KEYS</info> to load both public and
  private keys to the FFI context or save them from the context.


id: RNP_LOAD_SAVE_SECRET_KEYS
type: constant
doc:
<comment>Description:</comment>
  Load or save secret keys only. Can be OR-ed with <info>RNP_LOAD_SAVE_PUBLIC_KEYS</info> to load both public and
  private keys to the FFI context or save them from the context.


id: RPMMIRE_DEFAULT
type: constant
doc:
<comment>Description:</comment>
  Search pattern is a regular expression with \., .* and ^...$ added.


id: RPMTAG_ENHANCENAME
type: constant
doc:
<comment>Description:</comment>
  Weak dependencies, with database index, requires librpm &gt;= 4.13.


id: RPMTAG_FILETRIGGERNAME
type: constant
doc:
<comment>Description:</comment>
  File trigger name, with database index, requires librpm &gt;= 4.13.


id: RPMTAG_RECOMMENDNAME
type: constant
doc:
<comment>Description:</comment>
  Recommended weak dependencies, with database index, requires librpm &gt;= 4.13.


id: RPMTAG_SUGGESTNAME
type: constant
doc:
<comment>Description:</comment>
  Suggested weak dependencies, with database index, requires librpm &gt;= 4.13.


id: RPMTAG_TRANSFILETRIGGERNAME
type: constant
doc:
<comment>Description:</comment>
  Transaction file trigger name, with database index, requires librpm &gt;= 4.13.


id: RRDCreator::__construct
type: function
doc:
<comment>Description:</comment>
  Creates new RRDCreator instance
  
  Creates new <class>RRDCreator</class> instance.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>       Path for newly created RRD database file.
  <info>string</info>  <strong>$startTime</strong>  Time for the first value in RRD database. Parameter supports all formats which
                      are supported by rrd create call.
  <info>int</info>     <strong>$step</strong>       Base interval in seconds with which data will be fed into the RRD database.


id: RRDCreator::addArchive
type: function
doc:
<comment>Description:</comment>
  Adds RRA - archive of data values for each data source
  
  Adds RRA definition by description of archive. Archive consists  of a number of data values or
  statistics for each of the defined data-sources (DS). Data sources are defined by method
  RRDCreator::addDataSource. You need call this method for each requested archive.

<comment>Param:</comment>
  <info>string</info>  <strong>$description</strong>  Definition of archive - RRA. This has same format as RRA definition in rrd
                        create command. See man page of rrd create for more details.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: RRDCreator::addDataSource
type: function
doc:
<comment>Description:</comment>
  Adds data source definition for RRD database
  
  RRD can accept input from several data sources (DS), e.g incoming and outgoing traffic. This
  method adds data source by description. You need call this method for each data source.

<comment>Param:</comment>
  <info>string</info>  <strong>$description</strong>  Definition of data source - DS. This has same format as DS definition in rrd
                        create command. See man page of rrd create for more details.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: RRDCreator::save
type: function
doc:
<comment>Description:</comment>
  Saves the RRD database to a file
  
  Saves the RRD database into file, which name is defined by RRDCreator::__construct.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: RRDGraph::__construct
type: function
doc:
<comment>Description:</comment>
  Creates new RRDGraph instance
  
  Creates new <class>RRDGraph</class> instance. This instance is responsible for rendering the result of RRD
  database query into image.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  Full path for the newly created image.


id: RRDGraph::save
type: function
doc:
<comment>Description:</comment>
  Saves the result of query into image
  
  Saves the result of RRD database query into image defined by RRDGraph::__construct.

<comment>Return:</comment>
  <info>array</info>  Returns array with information about generated image, ou <info>false</info> em caso de falha.


id: RRDGraph::saveVerbose
type: function
doc:
<comment>Description:</comment>
  Saves the RRD database query into image and returns the verbose
     information about generated graph
    
  
  Saves the RRD database query into image file defined by method RRDGraph::__construct and returns
  the verbose information about generated graph, if "-" is used as image filename, image data are
  also returned in result array.

<comment>Return:</comment>
  <info>array</info>  Returns array with detailed information about generated image, ou <info>false</info> em caso de falha.


id: RRDGraph::setOptions
type: function
doc:
<comment>Description:</comment>
  Sets the options for rrd graph export

<comment>Param:</comment>
  <info>array</info>  <strong>$options</strong>  List of options for the image generation from the RRD database file. It can be
                   list of strings or list of strings with keys for better readability. Read the rrd
                   graph man pages for list of available options.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: RRDUpdater::__construct
type: function
doc:
<comment>Description:</comment>
  Creates new RRDUpdater instance
  
  Creates new RRDUpdater instance. This instance is responsible for updating the RRD database file.

<comment>Param:</comment>
  <info>string</info>  <strong>$path</strong>  Filesystem path for RRD database file, which will be updated.


id: RRDUpdater::update
type: function
doc:
<comment>Description:</comment>
  Update the RRD database file
  
  Updates the RRD file defined via RRDUpdater::__construct. The file is updated with a specific
  values.

<comment>Param:</comment>
  <info>array</info>   <strong>$values</strong>  Data for update. Key is data source name.
  <info>string</info>  <strong>$time</strong>    Time value for updating the RRD with a particular data. Default value is current
                   time.

<comment>Return:</comment>
  <info>bool</info>  Retorna <info>true</info> em caso de sucesso ou <info>false</info> em caso de falha.


id: RUNKIT7_ACC_PRIVATE
type: constant
doc:
<comment>Description:</comment>
  Flag for <strong>runkit7_method_add()</strong> and <strong>runkit7_method_redefine()</strong> to make the method private.


id: RUNKIT7_ACC_PROTECTED
type: constant
doc:
<comment>Description:</comment>
  Flag for <strong>runkit7_method_add()</strong> and <strong>runkit7_method_redefine()</strong> to make the method protected.


id: RUNKIT7_ACC_PUBLIC
type: constant
doc:
<comment>Description:</comment>
  Flag for <strong>runkit7_method_add()</strong> and <strong>runkit7_method_redefine()</strong> to make the method public.


id: RUNKIT7_ACC_RETURN_REFERENCE
type: constant
doc:
<comment>Description:</comment>
  Include this flag to make the function or method being created or redeclared return a reference.


id: RUNKIT7_ACC_STATIC
type: constant
doc:
<comment>Description:</comment>
  Flag for <strong>runkit7_method_add()</strong> and <strong>runkit7_method_redefine()</strong> to make the method static.


id: RUNKIT7_FEATURE_SANDBOX
type: constant
doc:
<comment>Description:</comment>
  Always 0, it's impractical to implement the sandbox feature in php 7.


id: RUNKIT7_IMPORT_CLASSES
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag representing a bitwise OR of the <info>RUNKIT7_IMPORT_CLASS_*</info> constants.


id: RUNKIT7_IMPORT_CLASS_CONSTS
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that class constants should be imported from the specified file.


id: RUNKIT7_IMPORT_CLASS_METHODS
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that class methods should be imported from the specified file.


id: RUNKIT7_IMPORT_CLASS_PROPS
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that class standard properties should be imported from the
  specified file.


id: RUNKIT7_IMPORT_CLASS_STATIC_PROPS
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that class static properties should be imported from the
  specified file. Available since Runkit 1.0.1.


id: RUNKIT7_IMPORT_FUNCTIONS
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that normal functions should be imported from the specified file.


id: RUNKIT7_IMPORT_OVERRIDE
type: constant
doc:
<comment>Description:</comment>
  <strong>runkit7_import()</strong> flag indicating that if any of the imported functions, methods, constants, or
  properties already exist, they should be replaced with the new definitions.  If this flag is not
  set, then any imported definitions which already exist will be discarded.


id: Random\CryptoSafeEngine
type: class
doc:
<comment>Description:</comment>
  A marker interface indicating that the <info>Random\Engine</info> returns cryptographically secure randomness.


id: Random\Engine
type: class
doc:
<comment>Description:</comment>
  A <class>Random\Engine</class> provides a low-level source of randomness by returning random bytes that are
  consumed by high-level APIs to perform their operations. The <class>Random\Engine</class> interface allows
  swapping out the algorithm used to generate randomness, because each algorithm makes different
  tradeoffs to fit specific use-cases. Some algorithms are very fast, but generate lower-quality
  randomness, whereas other algorithms are slower, but generate better randomness, up to
  cryptographically secure randomness as provided by the <class>Random\Engine\Secure</class> engine.
  
  PHP provides several <class>Random\Engine</class>s out of the box to accomodate different use-cases. The
  <class>Random\Engine\Secure</class> engine that is backed by a CSPRNG is the recommended safe default choice,
  unless the application requires either reproducible sequences or very high performance.


id: Random\Engine::generate
type: function
doc:
<comment>Description:</comment>
  Generates randomness
  
  Returns randomness and advances the algorithm’s state by one step.
  
  The randomness is represented by a binary string containing random bytes. This representation
  allows to unambiguously interpret the random bits generated by the algorithm, for example to
  accomodate different output sizes used by different algorithms.
  
  Algorithms that natively operate on integer values should return the integer in little-endian byte
  order, for example by leveraging the <strong>pack()</strong> function with the <return>P</return> format code. The high-level
  interface provided by the <class>Random\Randomizer</class> will interpret the returned random bytes as unsigned
  little-endian integers if a numeric representation is required.
  
  It is strongly recommended that each bit of the returned string is uniformly and independently
  selected, as some applications require randomness based on the bit-level to work correctly. For
  example linear congruential generators often generate lower-quality randomness for the less
  significant bits of the return integer value and thus would not be appropriate for applications
  that require bit-level randomness.

<comment>Return:</comment>
  <info>string</info>  A non-empty string containing random bytes.
          
          The <class>Random\Randomizer</class> works with unsigned 64 bit integers internally. If the returned
          string contains more than 64 bit (8 byte) of randomness the exceeding bytes will be
          ignored. Other applications may be able to process more than 64 bit at once.


id: Random\Engine\Mt19937::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs a new Mt19937 engine
  
  Como o mecanismo Mt19937 (“Mersenne Twister”) aceita apenas um único inteiro de 32 bits como
  semente, o número de sequências aleatórias possíveis é limitado a apenas 232 (ou seja,
  4.294.967.296), embora o Mt19937 possua um gigantesco período de 219937-1.
  
  Ao depender da geração aleatória implícita ou explícita de sementes, as duplicações aparecerão
  muito mais cedo. Sementes duplicadas são esperadas com probabilidade de 50% depois de menos de
  80.000 sementes geradas aleatoriamente de acordo com o problema do aniversário. Uma probabilidade
  de 10% de uma semente duplicada acontece depois de gerar aleatoriamente cerca de 30.000 sementes.
  
  Isso torna o Mt19937 inadequado para aplicações em que sequências duplicadas não devem ocorrer com
  mais do que uma probabilidade desprezível. Se a geração reproduzível de sementes for necessária,
  ambos os mecanismos <class>Random\Engine\Xoshiro256StarStar</class> e <class>Random\Engine\PcgOneseq128XslRr64</class> suportam
  sementes muito maiores que são improváveis de colidir aleatoriamente. Se a reprodutibilidade não
  for necessária, o mecanismo <class>Random\Engine\Secure</class> fornece aleatoriedade criptograficamente segura.
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>int|null</info>  <strong>$seed</strong>  Fills the state with values generated with a linear congruential generator that
                   was seeded with <strong>$seed</strong> interpreted as an unsigned 32 bit integer.
                   
                   If <strong>$seed</strong> is omitted or <info>null</info>, a random unsigned 32 bit integer will be used.
  <info>int</info>       <strong>$mode</strong>  Use one of the following constants to specify the implementation of the algorithm
                   to use. <info>MT_RAND_MT19937</info>: The correct Mt19937 implementation. <info>MT_RAND_PHP</info>: An
                   incorrect implementation for backwards compatibility with <strong>mt_srand()</strong> prior to PHP
                   7.1.0.
                   
                   Este recurso tornou-se
                   OBSOLETO a partir do PHP 8.3.0. O uso deste recurso
                   é fortemente desencorajado.


id: Random\Engine\Mt19937::__debugInfo
type: function
doc:
<comment>Description:</comment>
  Returns the internal state of the engine
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>array</info>  


id: Random\Engine\Mt19937::__serialize
type: function
doc:
<comment>Description:</comment>
  Serializes the Mt19937 object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>array</info>  


id: Random\Engine\Mt19937::__unserialize
type: function
doc:
<comment>Description:</comment>
  Deserializes the data parameter into a Mt19937 object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>array</info>  <strong>$data</strong>  

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Random\Engine\Mt19937::generate
type: function
doc:
<comment>Description:</comment>
  Generate 32 bits of randomness
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>string</info>  A string representing an unsigned 32 bit integer in little-endian order.


id: Random\Engine\PcgOneseq128XslRr64
type: class
doc:
<comment>Description:</comment>
  Implements a Permuted congruential generator (PCG) with 128 bits of state, XSL and RR output
  transformations, and 64 bits of output.


id: Random\Engine\PcgOneseq128XslRr64::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs a new PCG Oneseq 128 XSL RR 64 engine
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string|int|null</info>  <strong>$seed</strong>  How the internal 128 bit (16 byte) state consisting of one unsigned 128
                          bit integer is seeded depends on the type used as the <strong>$seed</strong>.
                          TypeDescrição<info>null</info> Fills the state with 16 random bytes generated using the
                          CSPRNG. <info>int</info> Fills the state by setting the state to <return>0</return>, advancing the
                          engine one step, adding the value of <strong>$seed</strong> interpreted as an unsigned 64
                          bit integer, and advancing the engine another step. <info>string</info> Fills the state
                          by interpreting a 16 byte <info>string</info> as a little-endian unsigned 128 bit
                          integer.


id: Random\Engine\PcgOneseq128XslRr64::__serialize
type: function
doc:
<comment>Description:</comment>
  Serializes the PcgOneseq128XslRr64 object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>array</info>  


id: Random\Engine\PcgOneseq128XslRr64::__unserialize
type: function
doc:
<comment>Description:</comment>
  Deserializes the data parameter into a PcgOneseq128XslRr64 object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>array</info>  <strong>$data</strong>  

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Random\Engine\PcgOneseq128XslRr64::generate
type: function
doc:
<comment>Description:</comment>
  Generate 64 bits of randomness
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>string</info>  A string representing an unsigned 64 bit integer in little-endian order.


id: Random\Engine\PcgOneseq128XslRr64::jump
type: function
doc:
<comment>Description:</comment>
  Efficiently move the engine ahead multiple steps
  
  Moves the algorithm’s state ahead by the number of steps given by <strong>$advance</strong>, as if
  <strong>Random\Engine\PcgOneseq128XslRr64::generate()</strong> was called that many times.

<comment>Param:</comment>
  <info>int</info>  <strong>$advance</strong>  The number of steps to move ahead; must be <return>0</return> or greater.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Random\Engine\Secure
type: class
doc:
<comment>Description:</comment>
  Generates cryptographically secure randomness using the operating system’s CSPRNG.
  
  The randomness generated by this <class>Random\Engine</class> is suitable for all applications, including the
  generation of long-term secrets, such as encryption keys.
  
  The <class>Random\Engine\Secure</class> engine is the recommended safe default choice, unless the application
  requires either reproducible sequences or very high performance.


id: Random\Engine\Secure::generate
type: function
doc:
<comment>Description:</comment>
  Generate cryptographically secure randomness
  
  Returns cryptographically secure randomness.
  
  As fontes de aleatoriedade usadas para esta função são as seguintes:
  
  Linux: getrandom(), /dev/urandom
  
  FreeBSD &gt;= 12 (PHP &gt;= 7.3): getrandom(), /dev/urandom
  
  Windows (PHP &gt;= 7.2): CNG-API
  
  Windows: CryptGenRandom
  
  macOS (PHP &gt;= 8.2; &gt;= 8.1.9; &gt;= 8.0.22 se CCRandomGenerateBytes estiver disponível em
  tempo de compilação): CCRandomGenerateBytes()
  
  macOS (PHP &gt;= 8.1; &gt;= 8.0.2): arc4random_buf(), /dev/urandom
  
  NetBSD &gt;= 7 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  OpenBSD &gt;= 5.5 (PHP &gt;= 7.1; &gt;= 7.0.1): arc4random_buf(), /dev/urandom
  
  DragonflyBSD (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  Solaris (PHP &gt;= 8.1): getrandom(), /dev/urandom
  
  Qualquer combinação de sistema operacional e versão do PHP não mencionada anteriormente:
  /dev/urandom
  
  Se nenhuma das fontes estiver disponível ou todas falharem em gerar aleatoriedade, então uma
  exceção <class>Random\RandomException</class> será lançada.

<comment>Return:</comment>
  <info>string</info>  A string containing <info>PHP_INT_SIZE</info> cryptographically secure random bytes.


id: Random\Engine\Xoshiro256StarStar::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs a new xoshiro256** engine
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>string|int|null</info>  <strong>$seed</strong>  How the internal 256 bit (32 byte) state consisting of four unsigned 64
                          bit integers is seeded depends on the type used as the <strong>$seed</strong>.
                          TypeDescrição<info>null</info> Fills the state with 32 random bytes generated using the
                          CSPRNG. <info>int</info> Fills the state with four consecutive values generated with
                          the SplitMix64 algorithm that was seeded with <strong>$seed</strong> interpreted as an
                          unsigned 64 bit integer. <info>string</info> Fills the state by interpreting a 32 byte
                          <info>string</info> as four little-endian unsigned 64 bit integers.


id: Random\Engine\Xoshiro256StarStar::__serialize
type: function
doc:
<comment>Description:</comment>
  Serializes the Xoshiro256StarStar object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>array</info>  


id: Random\Engine\Xoshiro256StarStar::__unserialize
type: function
doc:
<comment>Description:</comment>
  Deserializes the data parameter into a Xoshiro256StarStar object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>array</info>  <strong>$data</strong>  

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Random\Engine\Xoshiro256StarStar::jump
type: function
doc:
<comment>Description:</comment>
  Efficiently move the engine ahead by 2^128 steps
  
  Moves the algorithm’s state ahead by 2128 steps, as if
  <strong>Random\Engine\Xoshiro256StarStar::generate()</strong> was called 2128 times.
  
  The purpose of a jump is to facilitate the creation of a new <class>Random\Engine\Xoshiro256StarStar</class>
  engine from an existing seeded <class>Random\Engine\Xoshiro256StarStar</class> engine. The seeded engine acts as
  a blueprint, which can be cloned and repeatedly jumped to create 2128 non-overlapping sequences
  with 2128 values each.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Random\Engine\Xoshiro256StarStar::jumpLong()</strong>


id: Random\Engine\Xoshiro256StarStar::jumpLong
type: function
doc:
<comment>Description:</comment>
  Efficiently move the engine ahead by 2^192 steps
  
  Moves the algorithm’s state ahead by 2192 steps, as if
  <strong>Random\Engine\Xoshiro256StarStar::generate()</strong> was called 2192 times.
  
  The purpose of a long jump is to facilitate the creation of a new <class>Random\Engine\Xoshiro256StarStar</class>
  engine from an existing seeded <class>Random\Engine\Xoshiro256StarStar</class> engine. The seeded engine acts as
  a blueprint, which can be cloned and repeatedly jumped to create 264 non-overlapping sequences
  with 2192 values each.
  
  Long jumping may be combined with <strong>Random\Engine\Xoshiro256StarStar::jump()</strong>ing to further split
  each of the 264 sequences generated by long jumping, into 264 sequences of 2128 values each.

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.

<comment>See Also:</comment>
   * <strong>Random\Engine\Xoshiro256StarStar::jump()</strong>


id: Random\RandomError
type: class
doc:
<comment>Description:</comment>
  Indicates that the used <class>Random\Engine</class> is broken, e.g. because it is severely biased.


id: Random\Randomizer
type: class
doc:
<comment>Description:</comment>
  Provides a high-level API to the randomness provided by an <class>Random\Engine</class>.


id: Random\Randomizer::__construct
type: function
doc:
<comment>Description:</comment>
  Constructs a new Randomizer
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>Random\Engine|null</info>  <strong>$engine</strong>  The <class>Random\Engine</class> to use to generate randomness.
                               
                               If <strong>$engine</strong> is omitted or <info>null</info>, a new <class>Random\Engine\Secure</class> object will
                               be used.


id: Random\Randomizer::__serialize
type: function
doc:
<comment>Description:</comment>
  Serializes the Randomizer object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Return:</comment>
  <info>array</info>  


id: Random\Randomizer::__unserialize
type: function
doc:
<comment>Description:</comment>
  Deserializes the data parameter into a Randomizer object
  
  Esta função não
  está documentada; apenas a lista de argumentos está disponível.

<comment>Param:</comment>
  <info>array</info>  <strong>$data</strong>  

<comment>Return:</comment>
  <info>void</info>  Nenhum valor é retornado.


id: Random\Randomizer::getBytes
type: function
doc:
<comment>Description:</comment>
  Get random bytes
  
  Generates a string containing uniformly selected random bytes with the requested <strong>$length</strong>.
  
  As the returned bytes are selected completely randomly, the resulting string is likely to contain
  unprintable characters or invalid UTF-8 sequences. It may be necessary to encode it before
  transmission or display.

<comment>Param:</comment>
  <info>int</info>  <strong>$length</strong>  The length of the random <info>string</info> that should be returned in bytes; must be <return>1</return> or
                greater.

<comment>Return:</comment>
  <info>string</info>  A <info>string</info> containing the requested number of random bytes.

<comment>See Also:</comment>
   * <strong>random_bytes()</strong>
   * <strong>bin2hex()</strong>
   * <strong>base64_encode()</strong>
   * Random\Randomizer::getBytesFromString


id: Random\Randomizer::getBytesFromString
type: function
doc:
<comment>Description:</comment>
  Get random bytes from a source string
  
  Generates a string containing uniformly selected random bytes from the input <strong>$string</strong> with the
  requested <strong>$length</strong>.
  
  The chance for a byte to be selected is proportional to its share of the input <strong>$string</strong>. If each
  byte occurs the same amount of times, each byte is equally likely to be selected.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The <info>string</info> from which the returned bytes are selected.
  <info>int</info>     <strong>$length</strong>  The length of the random <info>string</info> that should be returned in bytes; must be <return>1</return> or
                   greater.

<comment>Return:</comment>
  <info>string</info>  A <info>string</info> containing the requested number of random bytes taken from the input <strong>$string</strong>.

<comment>See Also:</comment>
   * Random\Randomizer::getBytes


id: Random\Randomizer::getFloat
type: function
doc:
<comment>Description:</comment>
  Get a uniformly selected float
  
  Returns a uniformly selected, equidistributed float from a requested interval.
  
  Due to the limited precision, not all real numbers can be exactly represented as a floating point
  number.
   If a number cannot be represented exactly, it is rounded to the nearest representable exact
  value.
   Furthermore, floats are not equally dense across the whole number line.
   Because floats use a binary exponent, the distance between two neighboring floats doubles at each
  power of two.
   In other words: There are the same number of representable floats between <return>1.0</return> and <return>2.0</return> as they are
  between <return>2.0</return> and <return>4.0</return>, <return>4.0</return> and <return>8.0</return>, <return>8.0</return> and <return>16.0</return>, and so on.
  
  Randomly sampling an arbitrary number within the requested interval, for example by dividing two
  integers, might result in a biased distribution for this reason.
   The necessary rounding will cause some floats to be returned more often than others, especially
  around powers of two when the density of floats changes.
  
  Random\Randomizer::getFloat implements an algorithm that will return a uniformly selected float
  from the largest possible set of exactly representable and equidistributed floats within the
  requested interval.
   The distance between the selectable floats (“step size”) matches the distance between the floats
  with the lowest density, i.e. the distance between floats at interval boundary with the larger
  absolute value.
   This means that not all representable floats within a given interval may be returned if the
  interval crosses one or more powers of two.
   Stepping will start from the interval boundary with the larger absolute value to ensure the steps
  align with the exactly representable floats.
  
  Closed interval boundaries will always be included in the set of selectable floats.
   Thus, if the size of the interval is not an exact multiple of the step size and the boundary with
  the smaller absolute value is a closed boundary, the distance between that boundary and its
  nearest selectable float will be smaller than the step size.
  
  Post-processing the returned floats is likely going to break the uniform equidistribution, because
  the intermediate floats within a mathematical operation are experiencing implicit rounding.
   The requested interval should match the desired interval as closely as possible and rounding
  should only be performed as an explicit operation right before displaying the selected number to a
  user.
  
  To give an example of how the algorithm works, consider a floating point representation that uses
  a 3-bit mantissa.
   This representation is capable of representing 8 different floating point values between
  consecutive powers of two.
   This means that between <return>1.0</return> and <return>2.0</return> all steps of size <return>0.125</return> are exactly representable and between
  <return>2.0</return> and <return>4.0</return> all steps of size <return>0.25</return> are exactly representable.
   In reality PHP’s floats use a 52-bit mantissa and can represent 252 different values between each
  power of two.
   This means that <return>1.0</return><return>1.125</return><return>1.25</return><return>1.375</return><return>1.5</return><return>1.625</return><return>1.75</return><return>1.875</return><return>2.0</return><return>2.25</return><return>2.5</return><return>2.75</return><return>3.0</return><return>3.25</return><return>3.5</return><return>3.75</return><return>4.0</return> are the exactly
  representable floats between <return>1.0</return> and <return>4.0</return>.
  
  Now consider that $randomizer-&gt;getFloat(1.625, 2.5, IntervalBoundary::ClosedOpen) is called,
  i.e. a random float starting at <return>1.625</return> until, but not including, <return>2.5</return> is requested.
   The algorithm first determines the step size at the boundary with the larger absolute value
  (<return>2.5</return>). The step size at that boundary is <return>0.25</return>.
  
  Note that the size of the requested interval is <return>0.875</return>, which is not an exact multiple of <return>0.25</return>.
   If the algorithm would start stepping at the lower bound <return>1.625</return>, it would encounter <return>2.125</return>, which
  is not exactly representable and would experience implicit rounding.
   Thus the algorithm starts stepping at the upper boundary <return>2.5</return>.
   The selectable values are: <return>2.25</return><return>2.0</return><return>1.75</return><return>1.625</return>
   <return>2.5</return> is not included, because the upper boundary of the requested interval is an open boundary.
   <return>1.625</return> is included, even though its distance to the nearest value <return>1.75</return> is <return>0.125</return>, which is smaller
  than the previously determined step size of <return>0.25</return>.
   The reason for that is that the requested interval is closed at the lower boundary (<return>1.625</return>) and
  closed boundaries are always included.
  
  Finally the algorithm uniformly selects one of the four selectable values at random and returns
  it.
  
  In the previous example, there are eight representable floating point numbers between each
  sub-interval delimited by a power of two.
   To give an example why dividing two integers would not work well to generate a random float,
  consider that there are 16 equidistributed floating point numbers in the right-open interval from
  <return>0.0</return> until, but not including, <return>1.0</return>. Half of them are the eight exactly representable values between
  <return>0.5</return> and <return>1.0</return>, the other half are the values between <return>0.0</return> and <return>1.0</return> that the step size of <return>0.0625</return>.
   These can easily be generated by dividing a random integer between <return>0</return> and <return>15</return> by <return>16</return> to obtain one
  of:
   <return>0.0</return><return>0.0625</return><return>0.125</return><return>0.1875</return><return>0.25</return><return>0.3125</return><return>0.375</return><return>0.4375</return><return>0.5</return><return>0.5625</return><return>0.625</return><return>0.6875</return><return>0.75</return><return>0.8125</return><return>0.875</return><return>0.9375</return>
  
  This random float could be scaled to right-open interval from <return>1.625</return> until, but not including, <return>2.75</return>
  by multiplying it with the size of the interval (<return>0.875</return>) and adding the minimum <return>1.625</return>. This
  so-called affine transformation would result in the values:
   <return>1.625</return> rounded to <return>1.625</return><return>1.679</return> rounded to <return>1.625</return><return>1.734</return> rounded to <return>1.75</return><return>1.789</return> rounded to <return>1.75</return><return>1.843</return>
  rounded to <return>1.875</return><return>1.898</return> rounded to <return>1.875</return><return>1.953</return> rounded to <return>2.0</return><return>2.007</return> rounded to <return>2.0</return><return>2.062</return> rounded to
  <return>2.0</return><return>2.117</return> rounded to <return>2.0</return><return>2.171</return> rounded to <return>2.25</return><return>2.226</return> rounded to <return>2.25</return><return>2.281</return> rounded to <return>2.25</return><return>2.335</return>
  rounded to <return>2.25</return><return>2.390</return> rounded to <return>2.5</return><return>2.445</return> rounded to <return>2.5</return>
   Note how the upper boundary of <return>2.5</return> would be returned, despite being an open boundary and thus
  being excluded.
   Also note how <return>2.0</return> and <return>2.25</return> are twice as likely to be returned compared to the other values.

<comment>Param:</comment>
  <info>float</info>                    <strong>$min</strong>       The lower bound of the interval.
  <info>float</info>                    <strong>$max</strong>       The upper bound of the interval.
  <info>Random\IntervalBoundary</info>  <strong>$boundary</strong>  Specifies whether the interval boundaries are possible return
                                      values.

<comment>Return:</comment>
  <info>float</info>  A uniformly selected, equidistributed float from the interval specified by <strong>$min</strong>, <strong>$max</strong>, and
         <strong>$boundary</strong>.
          Whether <strong>$min</strong> and <strong>$max</strong> are possible return values depends on the value of <strong>$boundary</strong>.

<comment>See Also:</comment>
   * Random\Randomizer::nextFloat
   * Random\Randomizer::getInt


