# php_manual

id: ingres_autocommit
type: function
doc:
<comment>Description:</comment>
  Switch autocommit on or off
  
  <strong>ingres_autocommit()</strong> is called before opening a transaction (before the first call to
  <strong>ingres_query()</strong> or just after a call to <strong>ingres_rollback()</strong> or <strong>ingres_commit()</strong>) to switch the
  autocommit mode of the server on or off (when the script begins the autocommit mode is off).
  
  When autocommit mode is on, every query is automatically committed by the server, as if
  <strong>ingres_commit()</strong> was called after every call to <strong>ingres_query()</strong>. To see if autocommit is enabled
  use,  <strong>ingres_autocommit_state()</strong>.
  
  By default Ingres will rollback any uncommitted transactions at the end of a request. Use this
  function or <strong>ingres_commit()</strong> to ensure your data is committed to the database.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_autocommit_state()</strong>
   * <strong>ingres_query()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_commit()</strong>


id: ingres_autocommit_state
type: function
doc:
<comment>Description:</comment>
  Test if the connection is using autocommit
  
  <strong>ingres_autocommit_state()</strong> is called to determine whether the current link has autocommit enabled
  or not.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if autocommit is enabled or <info>false</info> when autocommit is disabled

<comment>See Also:</comment>
   * <strong>ingres_autocommit()</strong>
   * <strong>ingres_query()</strong>


id: ingres_charset
type: function
doc:
<comment>Description:</comment>
  Returns the installation character set
  
  <strong>ingres_charset()</strong> is called to determine the character set being used by the Ingres client, from
  II_CHARSETxx (where xx is the installation code).
  
  You can override the value returned by using the function <strong>putenv()</strong>. Changing the value of
  II_CHARSETxx in a running Ingres installation can cause data corruption.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>string</info>  Returns a string with the value for II_CHARSETxx or returns NULL if the value could not be
          determined.

<comment>See Also:</comment>
   * <strong>ingres_connect()</strong>
   * <strong>ingres_query()</strong>


id: ingres_close
type: function
doc:
<comment>Description:</comment>
  Close an Ingres database connection
  
  <strong>ingres_close()</strong> closes the connection to the Ingres server that is associated with the specified
  link.
  
  <strong>ingres_close()</strong> is usually unnecessary, as it will not close persistent connections and all
  non-persistent connections are automatically closed at the end of the script.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_connect()</strong>
   * <strong>ingres_pconnect()</strong>


id: ingres_commit
type: function
doc:
<comment>Description:</comment>
  Commit a transaction
  
  <strong>ingres_commit()</strong> commits the currently open transaction, making all changes made to the database
  permanent.
  
  This closes the transaction. A new transaction can be opened by sending a query with
  <strong>ingres_query()</strong>.
  
  You can also have the server commit automatically after every query by calling <strong>ingres_autocommit()</strong>
  before opening the transaction.
  
  By default Ingres will roll back any uncommitted transactions at the end of a request. Use this
  function or <strong>ingres_autocommit()</strong> to ensure your that data is committed to the database.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_autocommit()</strong>


id: ingres_connect
type: function
doc:
<comment>Description:</comment>
  Open a connection to an Ingres database
  
  <strong>ingres_connect()</strong> opens a connection with the given Ingres <strong>$database</strong>.
  
  The connection is closed when the script ends or when <strong>ingres_close()</strong> is called on this link.

<comment>Param:</comment>
  <info>string</info>  <strong>$database</strong>  The database name. Must follow the syntax:
                     
                     [vnode::]dbname[/svr_class]
  <info>string</info>  <strong>$username</strong>  The Ingres user name
  <info>string</info>  <strong>$password</strong>  The password associated with <strong>$username</strong>
  <info>array </info>  <strong>$options </strong>  <strong>ingres_connect()</strong> options Option nameOption
                     typeDescriptionExampledate_century_boundary<info>int</info>The threshold by which a 2-digit
                     year is determined to be in the current century or in the next century.
                     Equivalent to II_DATE_CENTURY_BOUNDARY. 50group<info>string</info>Specifies the group ID of
                     the user, equivalent to the "-G" flagpayrollrole<info>string</info>The role ID of the
                     application. If a role password is required, the parameter value should be
                     specified as "role/password"effective_user<info>string</info>The ingres user account being
                     impersonated, equivalent to the "-u" flaganother_userdbms_password<info>string</info>The
                     internal database password for the user connecting to
                     Ingress3cr3ttable_structure<info>string</info> The default structure for new tables. Valid
                     values for table_structure are:
                     INGRES_STRUCTURE_BTREEINGRES_STRUCTURE_HASHINGRES_STRUCTURE_HEAPINGRES_STRUCTURE_ISAMINGRES_STRUCTURE_CBTREEINGRES_STRUCTURE_CISAMINGRES_STRUCTURE_CHASHINGRES_STRUCTURE_CHEAP
                     INGRES_STRUCTURE_BTREEindex_structure<info>string</info> The default structure for new
                     secondary indexes. Valid values for index_structure are:
                     INGRES_STRUCTURE_CBTREEINGRES_STRUCTURE_CISAMINGRES_STRUCTURE_CHASHINGRES_STRUCTURE_BTREEINGRES_STRUCTURE_HASHINGRES_STRUCTURE_ISAM
                     INGRES_STRUCTURE_HASHlogin_local<info>bool</info>Determines how the connection user ID and
                     password are used when a VNODE is included in the target database string. If
                     set to TRUE, the user ID and password are used to locally access the VNODE, and
                     the VNODE login information is used to establish the DBMS connection. If set to
                     FALSE, the process user ID is used to access the VNODE, and the connection user
                     ID and password are used in place of the VNODE login information to establish
                     the DBMS connection. This parameter is ignored if no VNODE is included in the
                     target database string. The default is FALSE.TRUEtimezone<info>string</info>Controls the
                     timezone of the session. If not set it will default to the value defined by
                     II_TIMEZONE_NAME. If II_TIMEZONE_NAME is not defined, NA-PACIFIC (GMT-8 with
                     Daylight Savings) is used.date_format<info>int</info>Sets the allowable input and output
                     format for Ingres dates. Defaults to the value defined by II_DATE_FORMAT. If
                     II_DATE_FORMAT is not set the default date format is US, e.g. mm/dd/yy. Valid
                     values for date_format are:
                     INGRES_DATE_DMYINGRES_DATE_FINISHINGRES_DATE_GERMANINGRES_DATE_ISOINGRES_DATE_ISO4INGRES_DATE_MDYINGRES_DATE_MULTINATIONALINGRES_DATE_MULTINATIONAL4INGRES_DATE_YMDINGRES_DATE_US
                     INGRES_DATE_MULTINATIONAL4decimal_separator<info>string</info>The character identifier for
                     decimal data","money_lort<info>int</info>Leading or trailing currency sign. Valid values for
                     money_lort are: INGRES_MONEY_LEADINGINGRES_MONEY_TRAILING
                     INGRES_MONEY_TRAILINGmoney_sign<info>string</info>The currency symbol to be used with the
                     MONEY datatype€money_precision<info>int</info>The precision of the MONEY
                     datatype3float4_precision<info>int</info>Precision of the FLOAT4
                     datatype10float8_precision<info>int</info>Precision of the FLOAT8
                     data10blob_segment_length<info>int</info>The amount of data in bytes to fetch at a time when
                     retrieving BLOB or CLOB data, defaults to 4096 bytes when not explicitly
                     set8192
                     
                     The default structure for new tables. Valid values for table_structure are:
                     INGRES_STRUCTURE_BTREEINGRES_STRUCTURE_HASHINGRES_STRUCTURE_HEAPINGRES_STRUCTURE_ISAMINGRES_STRUCTURE_CBTREEINGRES_STRUCTURE_CISAMINGRES_STRUCTURE_CHASHINGRES_STRUCTURE_CHEAP
                     
                     INGRES_STRUCTURE_BTREE
                     
                     INGRES_STRUCTURE_HASH
                     
                     INGRES_STRUCTURE_HEAP
                     
                     INGRES_STRUCTURE_ISAM
                     
                     INGRES_STRUCTURE_CBTREE
                     
                     INGRES_STRUCTURE_CISAM
                     
                     INGRES_STRUCTURE_CHASH
                     
                     INGRES_STRUCTURE_CHEAP
                     
                     The default structure for new secondary indexes. Valid values for
                     index_structure are:
                     INGRES_STRUCTURE_CBTREEINGRES_STRUCTURE_CISAMINGRES_STRUCTURE_CHASHINGRES_STRUCTURE_BTREEINGRES_STRUCTURE_HASHINGRES_STRUCTURE_ISAM
                     
                     INGRES_STRUCTURE_CBTREE
                     
                     INGRES_STRUCTURE_CISAM
                     
                     INGRES_STRUCTURE_CHASH
                     
                     INGRES_STRUCTURE_BTREE
                     
                     INGRES_STRUCTURE_HASH
                     
                     INGRES_STRUCTURE_ISAM
                     
                     Sets the allowable input and output format for Ingres dates. Defaults to the
                     value defined by II_DATE_FORMAT. If II_DATE_FORMAT is not set the default date
                     format is US, e.g. mm/dd/yy. Valid values for date_format are:
                     INGRES_DATE_DMYINGRES_DATE_FINISHINGRES_DATE_GERMANINGRES_DATE_ISOINGRES_DATE_ISO4INGRES_DATE_MDYINGRES_DATE_MULTINATIONALINGRES_DATE_MULTINATIONAL4INGRES_DATE_YMDINGRES_DATE_US
                     
                     INGRES_DATE_DMY
                     
                     INGRES_DATE_FINISH
                     
                     INGRES_DATE_GERMAN
                     
                     INGRES_DATE_ISO
                     
                     INGRES_DATE_ISO4
                     
                     INGRES_DATE_MDY
                     
                     INGRES_DATE_MULTINATIONAL
                     
                     INGRES_DATE_MULTINATIONAL4
                     
                     INGRES_DATE_YMD
                     
                     INGRES_DATE_US
                     
                     Leading or trailing currency sign. Valid values for money_lort are:
                     INGRES_MONEY_LEADINGINGRES_MONEY_TRAILING
                     
                     INGRES_MONEY_LEADING
                     
                     INGRES_MONEY_TRAILING

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns a Ingres link resource on success o <info>false</info> in caso di fallimento

<comment>See Also:</comment>
   * <strong>ingres_pconnect()</strong>
   * <strong>ingres_close()</strong>


id: ingres_cursor
type: function
doc:
<comment>Description:</comment>
  Get a cursor name for a given result resource
  
  Returns a string with the active cursor name. If no cursor is active then  NULL is returned.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the active cursor name. If no cursor is active then NULL is
          returned.

<comment>See Also:</comment>
   * <strong>ingres_prepare()</strong>
   * <strong>ingres_execute()</strong>


id: ingres_errno
type: function
doc:
<comment>Description:</comment>
  Get the last Ingres error number generated
  
  Returns an integer containing the last error number. If no error was reported 0 is returned.
  
  If a <strong>$link</strong> resource is passed to <strong>ingres_errno()</strong> it returns the last error recorded for the link.
  If no link is passed, then <strong>ingres_errno()</strong> returns the last error reported using the default link.
  
  The function, <strong>ingres_errno()</strong>, should always be called after executing a database query.  Calling
  another function before <strong>ingres_errno()</strong> is called will reset or change any error code from the last
  Ingres function call.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>int</info>  Returns an integer containing the last error number. If no error was reported, 0 is returned.

<comment>See Also:</comment>
   * <strong>ingres_error()</strong>
   * <strong>ingres_errsqlstate()</strong>
   * <strong>ingres_next_error()</strong>


id: ingres_error
type: function
doc:
<comment>Description:</comment>
  Get a meaningful error message for the last error generated
  
  Returns a string containing the last error, or NULL if no error has occurred.
  
  If a <strong>$link</strong> resource is passed to <strong>ingres_error()</strong>, it returns the last error recorded for the link.
  If no link is passed then <strong>ingres_error()</strong> returns the last error reported using the default link.
  
  The function, <strong>ingres_error()</strong>, should always be called after executing any database query.  Calling
  another function before <strong>ingres_error()</strong> is called will reset or change any error message from the
  last Ingres function call.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the last error, or NULL if no error has occurred.

<comment>See Also:</comment>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_errsqlstate()</strong>
   * <strong>ingres_next_error()</strong>


id: ingres_errsqlstate
type: function
doc:
<comment>Description:</comment>
  Get the last SQLSTATE error code generated
  
  Returns a string containing the last SQLSTATE, or NULL if no error has occurred.
  
  If a <strong>$link</strong> resource is passed to <strong>ingres_errsqlstate()</strong>, it returns the last error recorded for the
  link. If no link is passed, then <strong>ingres_errsqlstate()</strong> returns the last error reported using the
  default link.
  
  The function, <strong>ingres_errsqlstate()</strong>, should always be called after executing any database query.
  Calling another function before <strong>ingres_errsqlstate()</strong> is called will reset or change any error
  message from the last Ingres function call.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the last SQLSTATE, or NULL if no error has occurred.

<comment>See Also:</comment>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>
   * <strong>ingres_next_error()</strong>


id: ingres_escape_string
type: function
doc:
<comment>Description:</comment>
  Escape special characters for use in a query
  
  <strong>ingres_escape_string()</strong> is used to escape certain characters within a string before it is sent to
  the database server.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link         </strong>  The connection link identifier
  <info>string  </info>  <strong>$source_string</strong>  The source string to be parsed

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the escaped data.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>


id: ingres_execute
type: function
doc:
<comment>Description:</comment>
  Execute a prepared query
  
  Execute a query prepared using <strong>ingres_prepare()</strong>.
  
  See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in  Runtime
  Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The result query identifier
  <info>array   </info>  <strong>$params</strong>  An array of parameter values to be used with the query
  <info>string  </info>  <strong>$types </strong>  A string containing a sequence of types for the parameter values passed. See
                     the types parameter in <strong>ingres_query()</strong> for the list of type codes.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_unbuffered_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>
   * <strong>ingres_commit()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_autocommit()</strong>
   * <strong>ingres_set_environment()</strong>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>


id: ingres_fetch_array
type: function
doc:
<comment>Description:</comment>
  Fetch a row of result into an array
  
  This function is an extended version of <strong>ingres_fetch_row()</strong>.  In addition to storing the data in
  the numeric indices of the result array, it also stores the data in associative indices, using the
  field names as keys.
  
  If two or more columns of the result have the same field names, the last column will take
  precedence. To access the another column or columns of the same name, you must use the numeric
  index of the column or make an alias for the column. For example:
  ]]>
  
  With regard to speed, the function is identical to <strong>ingres_fetch_object()</strong>, and almost as quick as
  <strong>ingres_fetch_row()</strong> (the difference is insignificant).
  
  By default, arrays created by <strong>ingres_fetch_array()</strong> start from position 1 and not 0 as with other
  DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter
  ingres.array_index_start.
  
  See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in
  Runtime Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result     </strong>  The query result identifier
  <info>int     </info>  <strong>$result_type</strong>  The result type. This <strong>$result_type</strong> can be <info>INGRES_NUM</info> for enumerated array,
                          <info>INGRES_ASSOC</info> for associative array, or <info>INGRES_BOTH</info> (default).

<comment>Return:</comment>
  <info>array</info>  Returns an array that corresponds to the fetched row, or <info>false</info> if there are no more rows

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_num_fields()</strong>
   * <strong>ingres_field_name()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_fetch_assoc
type: function
doc:
<comment>Description:</comment>
  Fetch a row of result into an associative array
  
  This function is stores the data fetched from a query executed using <strong>ingres_query()</strong> in an
  associative array, using the field names as keys.
  
  With regard to speed, the function is identical to <strong>ingres_fetch_object()</strong>, and almost as quick as
  <strong>ingres_fetch_row()</strong> (the difference is insignificant).
  
  By default, arrays created by <strong>ingres_fetch_assoc()</strong> start from position 1 and not 0 as with other
  DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter
  ingres.array_index_start.
  
  See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in
  Runtime Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier

<comment>Return:</comment>
  <info>array</info>  Returns an associative array that corresponds to the fetched row, or <info>false</info> if there are no
         more rows

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_num_fields()</strong>
   * <strong>ingres_field_name()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_fetch_object
type: function
doc:
<comment>Description:</comment>
  Fetch a row of result into an object
  
  This function is similar to <strong>ingres_fetch_array()</strong>, with one difference - an object is returned
  instead of an array.  Indirectly, this means that you can access the data only by the field names
  and not by their offsets (numbers are illegal property names).
  
  With regard to speed, the function is identical to <strong>ingres_fetch_array()</strong>, and almost as quick as
  <strong>ingres_fetch_row()</strong> (the difference is insignificant).
  
  See also the ingres.fetch_buffer_size and ingres.utf8 directives in Runtime Configuration.

<comment>Param:</comment>
  <info>   </info>  <strong>$link       </strong>  The query result identifier
  <info>int</info>  <strong>$result_type</strong>  (Optional argument.) <strong>$result_type</strong> is a constant and can take the following
                     values: <info>INGRES_ASSOC</info>, <info>INGRES_NUM</info>, and <info>INGRES_BOTH</info>.

<comment>Return:</comment>
  <info>object</info>  Returns an object that corresponds to the fetched row, or <info>false</info> if there are no more rows

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_num_fields()</strong>
   * <strong>ingres_field_name()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_fetch_proc_return
type: function
doc:
<comment>Description:</comment>
  Get the return value from a procedure call
  
  This function is used to retrieve the return value following the execution of an Ingres database
  procedure (stored procedure).
  
  If used with a row-producing procedure, this function should be called after all the rows from the
  procedure have been fetched using <strong>ingres_fetch_array()</strong>, <strong>ingres_fetch_object()</strong> or
  <strong>ingres_fetch_row()</strong>. This function will eliminate any rows yet to be fetched should there be any
  left over.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The result identifier for a query

<comment>Return:</comment>
  <info>int</info>  Returns an <info>int</info> if there is a return value otherwise it will return <info>null</info>.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_fetch_row
type: function
doc:
<comment>Description:</comment>
  Fetch a row of result into an enumerated array
  
  <strong>ingres_fetch_row()</strong> returns an array that corresponds to the fetched row, or <info>false</info> if there are no
  more rows. Each result column is stored in an array offset, starting at offset 1.
  
  Subsequent calls to <strong>ingres_fetch_row()</strong> return the next row in the result set, or <info>false</info> if there
  are no more rows.
  
  By default, arrays created by <strong>ingres_fetch_row()</strong> start from position 1 and not 0 as with other
  DBMS extensions. The starting position can be adjusted to 0 using the configuration parameter
  ingres.array_index_start.
  
  See also the ingres.array_index_start, ingres.fetch_buffer_size and ingres.utf8 directives in
  Runtime Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier

<comment>Return:</comment>
  <info>array</info>  Returns an array that corresponds to the fetched row, or <info>false</info> if there are no more rows

<comment>See Also:</comment>
   * <strong>ingres_num_fields()</strong>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>


id: ingres_field_length
type: function
doc:
<comment>Description:</comment>
  Get the length of a field
  
  <strong>ingres_field_length()</strong> returns the length of a field.  This is the number of bytes the server uses
  to store the field.  For detailed information, see the Ingres <return>OpenAPI User Guide</return>, Appendix <return>"Data
  Types"</return> in the Ingres documentation.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the column number whose length will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>int</info>  Returns the length of a field.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_field_name
type: function
doc:
<comment>Description:</comment>
  Get the name of a field in a query result
  
  <strong>ingres_field_name()</strong> returns the name of a field in a query result.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the field whose name will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the name of a field in a query result o <info>false</info> in caso di fallimento

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_field_nullable
type: function
doc:
<comment>Description:</comment>
  Test if a field is nullable
  
  Test if a field is nullable.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the field whose nullability will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>bool</info>  <strong>ingres_field_nullable()</strong> returns <info>true</info> if the field can be set to the <info>null</info> value and <info>false</info> if
        it cannot

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_field_precision
type: function
doc:
<comment>Description:</comment>
  Get the precision of a field
  
  <strong>ingres_field_precision()</strong> returns the precision of a field. This value is used only for decimal,
  float, and money SQL data types. For detailed information, see the Ingres <return>OpenAPI User Guide</return>,
  Appendix "Data Types" in the Ingres documentation.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the field whose precision will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>int</info>  Returns the field precision as an integer

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_field_scale
type: function
doc:
<comment>Description:</comment>
  Get the scale of a field
  
  <strong>ingres_field_scale()</strong> returns the scale of a field.  This value is used only for the decimal SQL
  data type. For detailed information, see the Ingres <return>OpenAPI User Guide</return>, Appendix <return>"Data Types"</return> in
  the Ingres documentation.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the field whose scale will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>int</info>  Returns the scale of the field, as an integer

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_field_type
type: function
doc:
<comment>Description:</comment>
  Get the type of a field in a query result
  
  Get the type of a field in a query result.
  
  See ingres.array_index_start in Runtime Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier
  <info>int     </info>  <strong>$index </strong>  <strong>$index</strong> is the field whose type will be retrieved.
                     
                     The possible values of <strong>$index</strong> depend upon the value of
                     ingres.array_index_start. If ingres.array_index_start is <return>1</return> (the default) then
                     <strong>$index</strong> must be between <return>1</return> and the value returned by <strong>ingres_num_fields()</strong>. If
                     ingres.array_index_start is <return>0</return> then <strong>$index</strong> must be between <return>0</return> and
                     <strong>ingres_num_fields()</strong><return> - 1</return>.

<comment>Return:</comment>
  <info>stringfalse</info>  <strong>ingres_field_type()</strong> returns the type of a field in a query result o <info>false</info> in caso di
               fallimento.  Examples of types returned are <return>IIAPI_BYTE_TYPE</return>, <return>IIAPI_CHA_TYPE</return>,
               <return>IIAPI_DTE_TYPE</return>, <return>IIAPI_FLT_TYPE</return>, <return>IIAPI_INT_TYPE</return>, <return>IIAPI_VCH_TYPE</return>. Some of these types
               can map to more than one SQL type depending on the length of the field (see
               <strong>ingres_field_length()</strong>). For example IIAPI_FLT_TYPE can be a float4 or a float8. For
               detailed information, see the Ingres <return>OpenAPI User Guide</return>, Appendix  "Data Types" in
               the Ingres documentation.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_free_result
type: function
doc:
<comment>Description:</comment>
  Free the resources associated with a result identifier

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>


id: ingres_next_error
type: function
doc:
<comment>Description:</comment>
  Get the next Ingres error
  
  Get the next Ingres error for the last executed query. Each call to <strong>ingres_next_error()</strong> can be
  followed by a call to <strong>ingres_errno()</strong>, <strong>ingres_error()</strong>  or <strong>ingres_errsqlstate()</strong> to get the
  respective error number, error text, or SQL STATE. While <strong>ingres_next_error()</strong> returns <info>true</info>, there
  are more errors to fetch.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  <strong>ingres_next_error()</strong> returns <info>true</info> if there is another error to retrieve or <info>false</info> when there
        are no more errors

<comment>See Also:</comment>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>
   * <strong>ingres_errsqlstate()</strong>


id: ingres_num_fields
type: function
doc:
<comment>Description:</comment>
  Get the number of fields returned by the last query
  
  <strong>ingres_num_fields()</strong> returns the number of fields in the results returned by the Ingres server
  after a call to <strong>ingres_query()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The query result identifier

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

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_num_rows
type: function
doc:
<comment>Description:</comment>
  Get the number of rows affected or returned by a query
  
  This function primarily is meant to get the number of rows modified in the database. However, it
  can be used to retrieve the number of rows to fetch for a SELECT statement.
  
  If scrollable cursors are disabled and this function is called before using <strong>ingres_fetch_array()</strong>,
  <strong>ingres_fetch_object()</strong>, or <strong>ingres_fetch_row()</strong>, the server will delete the result's data and the
  script will be unable to get them.
  
  Instead, you should retrieve the result's data using one of these fetch functions in a loop until
  it returns <info>false</info>, indicating that no more results are available.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  The result identifier for a query

<comment>Return:</comment>
  <info>int</info>  For delete, insert, or update queries, <strong>ingres_num_rows()</strong> returns the number of rows affected
       by the query. For other queries, <strong>ingres_num_rows()</strong> returns the number of rows in the query's
       result.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_pconnect
type: function
doc:
<comment>Description:</comment>
  Open a persistent connection to an Ingres database
  
  Open a persistent connection to an Ingres database.
  
  There are only two differences between this function and  <strong>ingres_connect()</strong>: First, when
  connecting, the function will initially try to find a (persistent) link that is already opened
  with the same parameters.  If one is found, an identifier for it will be returned instead of
  opening a new connection. Second, the connection to the Ingres server will not be closed when the
  execution of the script ends.  Instead, the link will remain open for future use (<strong>ingres_close()</strong>
  will not close links established by <strong>ingres_pconnect()</strong>). This type of link is therefore called
  "persistent".

<comment>Param:</comment>
  <info>string</info>  <strong>$database</strong>  The database name. Must follow the syntax:
                     
                     [vnode::]dbname[/svr_class]
  <info>string</info>  <strong>$username</strong>  The Ingres user name
  <info>string</info>  <strong>$password</strong>  The password associated with <strong>$username</strong>
  <info>array </info>  <strong>$options </strong>  See <strong>ingres_connect()</strong> for the list of options that can be passed

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an Ingres link resource on success o <info>false</info> in caso di fallimento

<comment>See Also:</comment>
   * <strong>ingres_connect()</strong>
   * <strong>ingres_close()</strong>


id: ingres_prepare
type: function
doc:
<comment>Description:</comment>
  Prepare a query for later execution
  
  Prepares a query for execution by <strong>ingres_execute()</strong>.
  
  The query becomes part of the currently open transaction.  If there is no open transaction,
  <strong>ingres_query()</strong> opens a new transaction. To close the transaction, you can  call either
  <strong>ingres_commit()</strong> to commit the changes made to the database or <strong>ingres_rollback()</strong> to cancel these
  changes. When the script ends, any open transaction is rolled back (by calling <strong>ingres_rollback()</strong>).
  You can also use <strong>ingres_autocommit()</strong> before opening a new transaction to have every SQL query
  immediately committed.
  
  See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in  Runtime
  Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link </strong>  The connection link identifier
  <info>string  </info>  <strong>$query</strong>  A valid SQL query (see the Ingres <return>SQL reference guide</return>) in the Ingres
                    documentation. See the query parameter in <strong>ingres_query()</strong> for a list of SQL
                    statements which cannot be executed using <strong>ingres_prepare()</strong>

<comment>Return:</comment>
  <info>mixed</info>  <strong>ingres_prepare()</strong> returns a query result identifier that is used with <strong>ingres_execute()</strong> to
         execute the query. To see  if an error occurred, use <strong>ingres_errno()</strong>,  <strong>ingres_error()</strong>, or
         <strong>ingres_errsqlstate()</strong>.

<comment>See Also:</comment>
   * <strong>ingres_unbuffered_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>
   * <strong>ingres_commit()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_autocommit()</strong>
   * <strong>ingres_set_environment()</strong>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>


id: ingres_query
type: function
doc:
<comment>Description:</comment>
  Send an SQL query to Ingres
  
  <strong>ingres_query()</strong> sends the given <strong>$query</strong> to the Ingres server.
  
  The query becomes part of the currently open transaction.  If there is no open transaction,
  <strong>ingres_query()</strong> opens a new transaction. To close the transaction, you can  call either
  <strong>ingres_commit()</strong> to commit the changes made to the database or <strong>ingres_rollback()</strong> to cancel these
  changes. When the script ends, any open transaction is rolled back (by calling <strong>ingres_rollback()</strong>).
  You can also use <strong>ingres_autocommit()</strong> before opening a new transaction to have every SQL query
  immediately committed.
  
  See also the ingres.describe, ingres.scrollable and ingres.utf8 directives in  Runtime
  Configuration

<comment>Param:</comment>
  <info>resource</info>  <strong>$link  </strong>  The connection link identifier.
  <info>string  </info>  <strong>$query </strong>  A valid SQL query (see the Ingres <return>SQL reference guide</return>) in the Ingres
                     documentation.
                     
                     Data inside the query should be properly escaped.
                     
                     The following types of SQL queries cannot be sent with this function: <return>close</return>
                     (see <strong>ingres_close()</strong>) <return>commit</return> (see <strong>ingres_commit()</strong>) <return>connect</return> (see
                     <strong>ingres_connect()</strong>) <return>disconnect</return> (see <strong>ingres_close()</strong>) <return>get dbevent</return><return>prepare to
                     commit</return><return>rollback</return> (see <strong>ingres_rollback()</strong>) <return>savepoint</return><return>set autocommit</return> (see
                     <strong>ingres_autocommit()</strong>) all cursor-related queries are unsupported
                     
                     <return>close</return> (see <strong>ingres_close()</strong>)
                     
                     <return>commit</return> (see <strong>ingres_commit()</strong>)
                     
                     <return>connect</return> (see <strong>ingres_connect()</strong>)
                     
                     <return>disconnect</return> (see <strong>ingres_close()</strong>)
                     
                     <return>get dbevent</return>
                     
                     <return>prepare to commit</return>
                     
                     <return>rollback</return> (see <strong>ingres_rollback()</strong>)
                     
                     <return>savepoint</return>
                     
                     <return>set autocommit</return> (see <strong>ingres_autocommit()</strong>)
                     
                     all cursor-related queries are unsupported
  <info>array   </info>  <strong>$params</strong>  An array of parameter values to be used with the query
  <info>string  </info>  <strong>$types </strong>  A string containing a sequence of types for the parameter values passed. When
                     ingres.describe is enabled, this parameter can be ignored as the driver
                     automatically fetches the expected parameter types from the server.

<comment>Return:</comment>
  <info>mixed</info>  <strong>ingres_query()</strong> returns a query result identifier on success else it returns <info>false</info>. To see
         if an error occurred use <strong>ingres_errno()</strong>,  <strong>ingres_error()</strong> or  <strong>ingres_errsqlstate()</strong>.

<comment>See Also:</comment>
   * <strong>ingres_unbuffered_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>
   * <strong>ingres_commit()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_autocommit()</strong>
   * <strong>ingres_set_environment()</strong>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>


id: ingres_result_seek
type: function
doc:
<comment>Description:</comment>
  Set the row position before fetching data
  
  This function is used to position the cursor associated with the result resource before issuing a
  fetch.  If ingres.array_index_start is set to 0 then the first row is 0 else it is 1.
  <strong>ingres_result_seek()</strong> can be used only with queries that make use of scrollable cursors. It cannot
  be used with <strong>ingres_unbuffered_query()</strong>.
  
  See also the ingres.scrollable and ingres.array_index_start directives in  Runtime Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result  </strong>  The result identifier for a query
  <info>int     </info>  <strong>$position</strong>  The row to position the cursor on. If ingres.array_index_start is set to 0,
                       then the first row is 0, else it is 1

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>


id: ingres_rollback
type: function
doc:
<comment>Description:</comment>
  Roll back a transaction
  
  <strong>ingres_rollback()</strong> rolls back the currently open transaction, actually cancelling all changes made
  to the database during the transaction.
  
  This closes the transaction. A new transaction can be opened by sending a query with
  <strong>ingres_query()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>  The connection link identifier

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_commit()</strong>
   * <strong>ingres_autocommit()</strong>


id: ingres_set_environment
type: function
doc:
<comment>Description:</comment>
  Set environment features controlling output options
  
  <strong>ingres_set_environment()</strong> is called to set environmental options that affect the output of certain
  values from Ingres, such as the timezone, date format, decimal character separator, and float
  precision.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link   </strong>  The connection link identifier
  <info>array   </info>  <strong>$options</strong>  An enumerated <info>array</info> of option name/value pairs. The following table lists the
                      option name and the expected type
                      
                      Option nameOption typeDescriptionExampledate_century_boundary<info>int</info>The threshold
                      by which a 2-digit year is determined to be in the current century or in the
                      next century. Equivalent to II_DATE_CENTURY_BOUNDARY50timezone<info>string</info>Controls
                      the timezone of the session. If not set, it will default the value defined by
                      II_TIMEZONE_NAME. If II_TIMEZONE_NAME is not defined, NA-PACIFIC (GMT-8 with
                      Daylight Savings) is used.UNITED-KINGDOMdate_format<info>int</info>Sets the allowable input
                      and output format for Ingres dates. Defaults to the value defined by
                      II_DATE_FORMAT. If II_DATE_FORMAT is not set, the default date format is US,
                      for example mm/dd/yy. Valid values for date_format are:
                      INGRES_DATE_DMYINGRES_DATE_FINISHINGRES_DATE_GERMANINGRES_DATE_ISOINGRES_DATE_ISO4INGRES_DATE_MDYINGRES_DATE_MULTINATIONALINGRES_DATE_MULTINATIONAL4INGRES_DATE_YMDINGRES_DATE_US
                      INGRES_DATE_ISO4decimal_separator<info>string</info>The character identifier for decimal
                      data","money_lort<info>int</info>Leading or trailing currency sign. Valid values for
                      money_lort are: INGRES_MONEY_LEADINGINGRES_MONEY_TRAILING
                      INGRES_MONEY_LEADINGmoney_sign<info>string</info>The currency symbol to be used with the
                      MONEY datatype€money_precision<info>int</info>The precision of the MONEY
                      datatype2float4_precision<info>int</info>Precision of the FLOAT4
                      datatype10float8_precision<info>int</info>Precision of the FLOAT8
                      data10blob_segment_length<info>int</info>The amount of data in bytes to fetch at a time
                      when retrieving BLOB or CLOB data. Defaults to 4096 bytes when not set
                      explicitly8192
                      
                      Sets the allowable input and output format for Ingres dates. Defaults to the
                      value defined by II_DATE_FORMAT. If II_DATE_FORMAT is not set, the default
                      date format is US, for example mm/dd/yy. Valid values for date_format are:
                      INGRES_DATE_DMYINGRES_DATE_FINISHINGRES_DATE_GERMANINGRES_DATE_ISOINGRES_DATE_ISO4INGRES_DATE_MDYINGRES_DATE_MULTINATIONALINGRES_DATE_MULTINATIONAL4INGRES_DATE_YMDINGRES_DATE_US
                      
                      INGRES_DATE_DMY
                      
                      INGRES_DATE_FINISH
                      
                      INGRES_DATE_GERMAN
                      
                      INGRES_DATE_ISO
                      
                      INGRES_DATE_ISO4
                      
                      INGRES_DATE_MDY
                      
                      INGRES_DATE_MULTINATIONAL
                      
                      INGRES_DATE_MULTINATIONAL4
                      
                      INGRES_DATE_YMD
                      
                      INGRES_DATE_US
                      
                      Leading or trailing currency sign. Valid values for money_lort are:
                      INGRES_MONEY_LEADINGINGRES_MONEY_TRAILING
                      
                      INGRES_MONEY_LEADING
                      
                      INGRES_MONEY_TRAILING

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ingres_connect()</strong>
   * <strong>ingres_query()</strong>


id: ingres_unbuffered_query
type: function
doc:
<comment>Description:</comment>
  Send an unbuffered  SQL query to Ingres
  
  <strong>ingres_unbuffered_query()</strong> sends the given <strong>$query</strong> to the Ingres server.
  
  The query becomes part of the currently open transaction.  If there is no open transaction,
  <strong>ingres_unbuffered_query()</strong> opens a new transaction. To close the transaction, you can  call either
  <strong>ingres_commit()</strong> to commit the changes made to the database or <strong>ingres_rollback()</strong> to cancel these
  changes. When the script ends, any open transaction is rolled back (by calling <strong>ingres_rollback()</strong>).
  You can also use <strong>ingres_autocommit()</strong> before opening a new transaction to have every SQL query
  immediately committed. Ingres allows only a single unbuffered statement to be active at any one
  time. The extension will close any active unbuffered statements before executing any SQL. In
  addition you cannot use <strong>ingres_result_seek()</strong> to position the row before fetching.
  
  See also the ingres.describe and ingres.utf8 directives in  Runtime Configuration.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link  </strong>  The connection link identifier
  <info>string  </info>  <strong>$query </strong>  A valid SQL query (see the Ingres SQL reference guide) in the Ingres
                     documentation. See the query parameter in <strong>ingres_query()</strong> for a list of SQL
                     statements that cannot be executed via <strong>ingres_unbuffered_query()</strong>.
                     
                     Data inside the query should be properly escaped.
  <info>array   </info>  <strong>$params</strong>  An array of parameter values to be used with the query
  <info>string  </info>  <strong>$types </strong>  A string containing a sequence of types for the parameter values passed. See
                     the types parameter in <strong>ingres_query()</strong> for the list of type codes.

<comment>Return:</comment>
  <info>mixed</info>  <strong>ingres_unbuffered_query()</strong> returns a query result identifier when there are rows to fetch;
         else it returns <info>false</info> when there are no rows, as is the case of an INSERT, UPDATE, or
         DELETE statement. To see if an error occurred, use <strong>ingres_errno()</strong>,  <strong>ingres_error()</strong>, or
         <strong>ingres_errsqlstate()</strong>.

<comment>See Also:</comment>
   * <strong>ingres_query()</strong>
   * <strong>ingres_fetch_array()</strong>
   * <strong>ingres_fetch_assoc()</strong>
   * <strong>ingres_fetch_object()</strong>
   * <strong>ingres_fetch_row()</strong>
   * <strong>ingres_commit()</strong>
   * <strong>ingres_rollback()</strong>
   * <strong>ingres_autocommit()</strong>
   * <strong>ingres_set_environment()</strong>
   * <strong>ingres_errno()</strong>
   * <strong>ingres_error()</strong>


id: inotify_add_watch
type: function
doc:
<comment>Description:</comment>
  Add a watch to an initialized inotify instance
  
  <strong>inotify_add_watch()</strong> adds a new watch or modify an existing watch for the file or directory
  specified in <strong>$pathname</strong>.
  
  Using <strong>inotify_add_watch()</strong> on a watched object replaces the existing watch. Using the <info>IN_MASK_ADD</info>
  constant adds (OR) events to the existing watch.

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  Resource returned by
                               <strong>inotify_init()</strong>
  <info>string  </info>  <strong>$pathname        </strong>  File or directory to watch
  <info>int     </info>  <strong>$mask            </strong>  Events to watch for. See Costanti Predefinite.

<comment>Return:</comment>
  <info>int</info>  The return value is a unique (inotify instance wide) watch descriptor.

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>


id: inotify_init
type: function
doc:
<comment>Description:</comment>
  Initialize an inotify instance
  
  Initialize an inotify instance for use with <strong>inotify_add_watch()</strong>

<comment>Return:</comment>
  <info>resource</info>  A stream resource or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>inotify_add_watch()</strong>
   * <strong>inotify_rm_watch()</strong>
   * <strong>inotify_queue_len()</strong>
   * <strong>inotify_read()</strong>
   * <strong>fclose()</strong>


id: inotify_queue_len
type: function
doc:
<comment>Description:</comment>
  Return a number upper than zero if there are pending events
  
  This function allows to know if <strong>inotify_read()</strong> will block or not. If a number upper than zero is
  returned, there are pending events and  <strong>inotify_read()</strong> will not block.

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  Resource returned by
                               <strong>inotify_init()</strong>

<comment>Return:</comment>
  <info>int</info>  Returns a number upper than zero if there are pending events.

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>
   * <strong>stream_select()</strong>
   * <strong>stream_set_blocking()</strong>


id: inotify_read
type: function
doc:
<comment>Description:</comment>
  Read events from an inotify instance
  
  Read inotify events from an inotify instance.

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  Resource returned by
                               <strong>inotify_init()</strong>

<comment>Return:</comment>
  <info>array</info>  An array of inotify events or <info>false</info> if no events was pending and <strong>$inotify_instance</strong> is
         non-blocking. Each event is an array with the following keys: wd is a watch descriptor
         returned by <strong>inotify_add_watch()</strong>mask is a bit mask of eventscookie is a unique id to connect
         related events (e.g. <info>IN_MOVE_FROM</info> and <info>IN_MOVE_TO</info>)name is the name of a file (e.g. if a file
         was modified in a watched directory)

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>
   * <strong>stream_select()</strong>
   * <strong>stream_set_blocking()</strong>
   * <strong>inotify_queue_len()</strong>


id: inotify_rm_watch
type: function
doc:
<comment>Description:</comment>
  Remove an existing watch from an inotify instance
  
  <strong>inotify_rm_watch()</strong> removes the watch <strong>$watch_descriptor</strong> from the inotify instance
  <strong>$inotify_instance</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  Resource returned by
                               <strong>inotify_init()</strong>
  <info>int     </info>  <strong>$watch_descriptor</strong>  Watch to remove from the instance

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>


id: intdiv
type: function
doc:
<comment>Description:</comment>
  Integer division
  
  Returns the integer quotient of the division of <strong>$num1</strong> by <strong>$num2</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$num1</strong>  Number to be divided.
  <info>int</info>  <strong>$num2</strong>  Number which divides the <strong>$num1</strong>.

<comment>Return:</comment>
  <info>int</info>  The integer quotient of the division of <strong>$num1</strong> by <strong>$num2</strong>.

<comment>See Also:</comment>
   * <return>/</return> - Floating-point division
   * <return>%</return> - Integer modulus
   * <strong>fmod()</strong> - Floating-point modulo


id: interface_exists
type: function
doc:
<comment>Description:</comment>
  Checks if the interface has been defined
  
  Checks if the given interface has been defined.

<comment>Param:</comment>
  <info>string</info>  <strong>$interface_name</strong>  The interface name
  <info>bool  </info>  <strong>$autoload      </strong>  Whether to call __autoload or not by default.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the interface given by  <strong>$interface_name</strong> has been defined, <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>get_declared_interfaces()</strong>
   * <strong>class_implements()</strong>
   * <strong>class_exists()</strong>


id: intl_error_name
type: function
doc:
<comment>Description:</comment>
  Get symbolic name for a given error code
  
  Return ICU error code name.

<comment>Param:</comment>
  <info>int</info>  <strong>$error_code</strong>  ICU error code.

<comment>Return:</comment>
  <info>string</info>  The returned string will be the same as the name of the error code constant.

<comment>See Also:</comment>
   * <strong>intl_is_failure()</strong>
   * <strong>intl_get_error_code()</strong>
   * <strong>intl_get_error_message()</strong>


id: intl_get_error_code
type: function
doc:
<comment>Description:</comment>
  Get the last error code
  
  Useful to handle errors occurred in static methods when there's no object to get error code from.

<comment>Return:</comment>
  <info>int</info>  Error code returned by the last API function call.

<comment>See Also:</comment>
   * <strong>intl_is_failure()</strong>
   * <strong>intl_error_name()</strong>
   * <strong>intl_get_error_message()</strong>
   * <strong>collator_get_error_code()</strong>
   * <strong>numfmt_get_error_code()</strong>


id: intl_get_error_message
type: function
doc:
<comment>Description:</comment>
  Get description of the last error
  
  Get error message from last internationalization function called.

<comment>Return:</comment>
  <info>string</info>  Description of an error occurred in the last API function call.

<comment>See Also:</comment>
   * <strong>intl_error_name()</strong>
   * <strong>intl_get_error_code()</strong>
   * <strong>intl_is_failure()</strong>
   * <strong>collator_get_error_message()</strong>
   * <strong>numfmt_get_error_message()</strong>


id: intl_is_failure
type: function
doc:
<comment>Description:</comment>
  Check whether the given error code indicates failure
  
  

<comment>Param:</comment>
  <info>int</info>  <strong>$error_code</strong>  is a value that returned by functions: <strong>intl_get_error_code()</strong>,
                    <strong>collator_get_error_code()</strong> .

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if it the code indicates some failure, and <info>false</info> in case of success or a warning.

<comment>See Also:</comment>
   * <strong>intl_get_error_code()</strong>
   * <strong>collator_get_error_code()</strong>
   * <strong>Collator-getErrorCode()</strong>


id: intval
type: function
doc:
<comment>Description:</comment>
  Estrae il valore intero da una variabile
  
  Estrae il valore <info>intero</info> di <strong>$var</strong>, utilizzando la <strong>$base</strong> definita a parametro per la conversione (la
  base vale 10 di default). <strong>intval()</strong> non dovrebbe essere usata sugli oggetti, poichè facendolo
  emetterà un errore di livello <info>E_NOTICE</info> e restituirà 1.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var </strong>  Valore scalare da convertire in intero
  <info>int  </info>  <strong>$base</strong>  Base per la conversione
                
                Se <strong>$base</strong> è 0, la base usata è determinata dal formato di <strong>$var</strong>:  se la stringa
                include un prefisso "0x" (o "0X"), la base è considerata 16 (esadecimale);
                altrimenti,  se la stringa inizia con "0", la base è considerata 8 (ottale);
                altrimenti,  la base è considerata 10 (decimale).
                
                se la stringa include un prefisso "0x" (o "0X"), la base è considerata 16
                (esadecimale); altrimenti,
                
                se la stringa inizia con "0", la base è considerata 8 (ottale); altrimenti,
                
                la base è considerata 10 (decimale).

<comment>Return:</comment>
  <info>int</info>  Il valore intero di <strong>$var</strong> se riesce, oppure 0 in caso di errore. Gli array vuoti restituiscono
       0, gli array non vuoti restituiscono 1.
       
       Il valore massimo dipende dal sistema. Nei sistemi a 32 bit si ha come valore per il caso di
       intero con segno il range da  -2147483648 a 2147483647. Così, ad esempio, su tali sistemi, la
       riga <return>intval('1000000000000')</return> restituirà 2147483647. Il massimo valore per un intero con segno
       sui sistemi a 64 bit è 9223372036854775807.
       
       Le stringhe probabilmente restituiranno 0, sebbene il valore restituito dipenda dal primo
       carattere a sinistra della stringa. Si utilizzano le  comuni di integer casting .

<comment>See Also:</comment>
   * <strong>boolval()</strong>
   * <strong>floatval()</strong>
   * <strong>strval()</strong>
   * <strong>settype()</strong>
   * <strong>is_numeric()</strong>
   * Manipolazione del tipo
   * Funzioni Matematiche con Precisione Arbitraria BCMath


id: ip2long
type: function
doc:
<comment>Description:</comment>
  Converts a string containing an (IPv4) Internet Protocol dotted address
        into a proper address.
        Converte una stringa contenente un indirizzo di rete del Protocollo Internet (IPv4)
        in un indirizzo espresso come tipo di dato int.


id: iptcembed
type: function
doc:
<comment>Description:</comment>
  Embeds binary IPTC data into a JPEG image
  
  Embeds binary IPTC data into a JPEG image.

<comment>Param:</comment>
  <info>string</info>  <strong>$iptc_data</strong>  The data to be written.
  <info>string</info>  <strong>$filename </strong>  Path to the JPEG image.
  <info>int   </info>  <strong>$spool    </strong>  Spool flag. If the spool flag is less than 2 then the JPEG will be  returned
                      as a string. Otherwise the JPEG will be printed to STDOUT.

<comment>Return:</comment>
  <info>stringbool</info>  If <strong>$spool</strong> is less than 2, the JPEG will be returned, o <info>false</info> in caso di fallimento.
              Otherwise returns <info>true</info> on success o <info>false</info> in caso di fallimento.


id: iptcparse
type: function
doc:
<comment>Description:</comment>
  Parse a binary IPTC block into single tags
  
  Parses an IPTC block into its single tags.

<comment>Param:</comment>
  <info>string</info>  <strong>$iptc_block</strong>  A binary IPTC block.

<comment>Return:</comment>
  <info>arrayfalse</info>  Returns an array using the tagmarker as an index and the value as the value. It
              returns <info>false</info> on error or if no IPTC data was found.


id: is_a
type: function
doc:
<comment>Description:</comment>
  Verifica se l'oggetto è di questa classe o ha questa classe come una dei suoi genitori
  
  Verifica se il dato <strong>$object</strong> è di questa classe o ha questa classe come una dei suoi genitori.

<comment>Param:</comment>
  <info>mixed </info>  <strong>$object      </strong>  Un nome di classe o un'istanza di oggetto.
  <info>string</info>  <strong>$class_name  </strong>  Il nome della classe
  <info>bool  </info>  <strong>$allow_string</strong>  Se questo parametro è impostato a <info>false</info>, il nome della classe stringa come
                         <strong>$object</strong> non è permesso. Questo impedisce anche di chiamare l'autoloader se
                         la classe non esiste.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se l'oggetto è di questa classe o ha questa classe come una dei suoi
        genitori, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>get_class()</strong>
   * <strong>get_parent_class()</strong>
   * <strong>is_subclass_of()</strong>


id: is_array
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è un array
  
  Verifica se il valore dato è un array.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  Variabile da verificare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è un <info>array</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>


id: is_bool
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è di tipo boolean
    
  
  Verifica se la variabile data sia di tipo boolean

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è di tipo <info>boolean</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_callable
type: function
doc:
<comment>Description:</comment>
  Verifica se il contenuto di una variabile può essere eseguito come una funzione
    
  
  Verifica se il contenuto di una variabile può essere eseguito come una funzione. Questo può
  controllare che una semplice variabile contiene il nome di una funzione valida, o che un array
  contiene un oggetto codificato opportunamente e il nome della funzione.

<comment>Param:</comment>
  <info>mixed </info>  <strong>$var          </strong>  Il valore da controllare
  <info>bool  </info>  <strong>$syntax_only  </strong>  Se è impostato su <info>true</info> la funzione verifica solo che <strong>$name</strong> possa essere
                          una funzione o un metodo. Essa rifiuterà solo variabili semplici che non
                          sono stringhe, o un array che non ha una struttura valida per essere usata
                          come una callback. Quelle valide dovrebbero avere solo 2 ingressi, il
                          primo dei quali è un oggetto o una stringa, e il secondo una stringa.
  <info>string</info>  <strong>$callable_name</strong>  Riceve il "nome della callable".  Nell'esempio sottostante esso è
                          "someClass::someMethod".  Notare, comunque, che nonostante l'implicazione
                          che someClass::SomeMethod() sia un metodo statico callable, questo non è
                          il caso.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è callable, <info>false</info>  in caso contrario.

<comment>See Also:</comment>
   * <strong>function_exists()</strong>
   * <strong>method_exists()</strong>


id: is_countable
type: function
doc:
<comment>Description:</comment>
  Verify that the contents of a variable is a countable value
    
  
  Verify that the contents of a variable is an <info>array</info> or an object implementing <class>Countable</class>

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The value to check

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if <strong>$value</strong> is countable, <info>false</info>  otherwise.

<comment>See Also:</comment>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>
   * <strong>is_iterable()</strong>
   * <strong>is_bool()</strong>


id: is_dir
type: function
doc:
<comment>Description:</comment>
  Dice se la stringa corrisponde ad una directory
  
  Dice se il nome di file specificato è una cartella.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Percorso del file. Se <strong>$filename</strong> è un percorso relativo, sarà verificato in modo
                     relativo rispetto alla cartella di lavoro attuale. Se <strong>$filename</strong> è un link
                     simbolico o fisico   tale collegamento sarà risolto e controllato. Se è stato
                     abilitato open_basedir ulteriori restrizioni posso essere applicate.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se il nome file esiste ed è una directory, <info>false</info> altrimenti.

<comment>See Also:</comment>
   * <strong>chdir()</strong>
   * <strong>dir()</strong>
   * <strong>opendir()</strong>
   * <strong>is_file()</strong>
   * <strong>is_link()</strong>


id: is_double
type: function
doc:
<comment>Description:</comment>
  Alias di is_float
  
  Questa funzione è sinonimo di:  <strong>is_float()</strong>.


id: is_float
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è di tipo float (decimale a virgola mobile)
  
  Verifica se una variabile è di tipo float (decimale a virgola mobile).
  
  Per testare se una variabile è un numero o una stringa numerica (come negli input dei form, che
  sono sempre una stringa), bisogna usare <strong>is_numeric()</strong>.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è un <info>float</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_int()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>


id: is_int
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è di tipo integer
  
  Verifica se una variabile è di tipo integer.
  
  Per testare se una variabile è un numero o una stringa numerica (come negli input dei form, che
  sono sempre una stringa), bisogna usare <strong>is_numeric()</strong>.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è un <info>integer</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_float()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>


id: is_integer
type: function
doc:
<comment>Description:</comment>
  Alias di is_int
  
  Questa funzione è sinonimo di:  <strong>is_int()</strong>.


id: is_iterable
type: function
doc:
<comment>Description:</comment>
  Verify that the contents of a variable is an iterable value
    
  
  Verify that the contents of a variable is accepted by the <info>iterable</info> pseudo-type, i.e. that it is
  either an <info>array</info> or an object implementing <class>Traversable</class>

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The value to check

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if <strong>$value</strong> is iterable, <info>false</info>  otherwise.

<comment>See Also:</comment>
   * <strong>is_array()</strong>


id: is_null
type: function
doc:
<comment>Description:</comment>
  Verifica se la variabile è di tipo null
    
  
  Verifica che la variabile data sia di tipo <info>null</info>

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è di tipo <info>null</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * Il tipo <info>null</info>
   * <strong>isset()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_numeric
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è un numero o una stringa numerica
    
  
  Verifica se una variabile è un numero. Le stringhe numeriche consistono in segni opzionali,
  qualsiasi numero di cifre, parte decimale opzionale e parte esponenziale opzionale. Quindi
  <return>+0123.45e6</return> è un valore numerico valido. Le notazioni Esadecimali (per esempio <return>0xf4c3b00c</return>), Binarie
  (per esempio <return>0b10100111001</return>), Ottali (per esempio <return>0777</return>) non sono consentite.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è un numero o una stringa numerica, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>ctype_digit()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_null()</strong>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_object
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è un object
  
  Verifica se una variabile è un object.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è un <info>object</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_int()</strong>
   * <strong>is_float()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>


id: is_resource
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è una risorsa
    
  
  Verifica se una data variabile sia di tipo risorsa.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se la variabile individuata dal parametro <strong>$var</strong> è di tipo <info>resource</info>,
        altrimenti restituisce <info>false</info>.

<comment>See Also:</comment>
   * The resource-type documentation
   * <strong>get_resource_type()</strong>


id: is_scalar
type: function
doc:
<comment>Description:</comment>
  Verifica se la variabile è di tipo scalare
    
  
  Verifica se la data variabile sia di tipo scalare
  
  Le variabili scalari sono quelle contenenti valori di tipo <info>integer</info>,  <info>float</info>, <info>string</info> oppure <info>boolean</info>.
  I tipi <info>array</info>, <info>object</info> e <info>resource</info>  non sono scalari.
  
  La funzione <strong>is_scalar()</strong> non considera il tipo <info>resource</info> come valore scalare, dato che il tipo
  <info>resource</info> è una tipologia di dato astratto che attualmente si basa su interi. Tuttavia non ci si
  può basare su questo tipo di implementazione, in futuro potrebbe cambiare.
  
  <strong>is_scalar()</strong> non considera NULL come valore scalare.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se la variabile indicata dal parametro <strong>$var</strong> è di tipo scalare, in caso
        contrario restituisce <info>false</info>.

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_real()</strong>
   * <strong>is_string()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_soap_fault
type: function
doc:
<comment>Description:</comment>
  Checks if a SOAP call has failed
  
  This function is useful to check if the SOAP call failed, but without using exceptions. To use it,
  create a  <class>SoapClient</class> object with the <return>exceptions</return> option set to zero or <info>false</info>. In this case, the
  SOAP method will return a special  <class>SoapFault</class> object which encapsulates the fault  details
  (faultcode, faultstring, faultactor and faultdetails).
  
  If <return>exceptions</return> is not set then SOAP call will throw an exception on error. <strong>is_soap_fault()</strong> checks
  if the given parameter is a <class>SoapFault</class> object.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$object</strong>  The object to test.

<comment>Return:</comment>
  <info>bool</info>  This will return <info>true</info> on error, and <info>false</info> otherwise.

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


id: is_string
type: function
doc:
<comment>Description:</comment>
  Verifica se il tipo di una variabile sia stringa
  
  Verifica se il tipo di una variabile sia stringa.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da valutare.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> è di tipo <info>string</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_subclass_of
type: function
doc:
<comment>Description:</comment>
  Verifica se l'oggetto ha questa classe come una dei suoi genitori o la implementa
  
  Verifica se l'<strong>$object</strong> dato ha la classe <strong>$class_name</strong> come una dei suoi genitori o la implementa.

<comment>Param:</comment>
  <info>mixed </info>  <strong>$object      </strong>  Un nome di classe o un'istanza di oggetto. Non viene generato nessun errore
                         se la classe non esiste.
  <info>string</info>  <strong>$class_name  </strong>  Il nome della classe
  <info>bool  </info>  <strong>$allow_string</strong>  Se questo parametro è impostato a <info>false</info>, il nome della classe stringa come
                         <strong>$object</strong> non è permesso. Questo impedisce anche di chiamare l'autoloader se
                         la classe non esiste.

<comment>Return:</comment>
  <info>bool</info>  Questa funzione restituisce <info>true</info> se l'oggetto <strong>$object</strong>, appartiene ad una classe che è una
        sottoclasse di <strong>$class_name</strong>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>get_class()</strong>
   * <strong>get_parent_class()</strong>
   * <strong>is_a()</strong>
   * <strong>class_parents()</strong>


id: is_tainted
type: function
doc:
<comment>Description:</comment>
  Controlla se una stringa è contaminata
  
  Controlla se una stringa è contaminata

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

<comment>Return:</comment>
  <info>bool</info>  Restituisce TRUE se la stringa è contaminata, FALSE altrimenti.


id: isset
type: function
doc:
<comment>Description:</comment>
  Verifica se una variabile è definita e non è null
  
  Verifica se una variabile è definita e non è <info>null</info>.
  
  Se una variabile è stata distrutta con <strong>unset()</strong>, essa non sarà più definita. <strong>isset()</strong> restituirà
  <info>false</info> se si testa una variabile che è stata impostata a <info>null</info>. Da notare anche che un byte null
  (<return>"\0"</return>) non è equivalente alla costante <info>null</info> di PHP.
  
  Se vengono forniti parametri multipli allora <strong>isset()</strong> restituirà <info>true</info> solo se tutti i parametri
  sono definiti. La valuazione va da sinistra verso destra e si ferma appena si incontra una
  variabile non definita.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>  La variabile da controllare.
  <info>mixed</info>  <strong>$...</strong>  Un'altra variabile ...

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se <strong>$var</strong> esiste e ha un valore diverso da <info>null</info>, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>empty()</strong>
   * __isset()
   * <strong>unset()</strong>
   * <strong>defined()</strong>
   * le tabelle di comparazione dei tipi
   * <strong>array_key_exists()</strong>
   * <strong>is_null()</strong>
   * l'operatore @ di controllo degli errori


id: iterator_apply
type: function
doc:
<comment>Description:</comment>
  Call a function for every element in an iterator
  
  Calls a function for every element in an iterator.

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>  The iterator object to iterate over.
  <info>callable   </info>  <strong>$function</strong>  The callback function to call on every element. This function only
                          receives the given <strong>$args</strong>, so it is nullary by default. If <return>count($args) ===
                          3</return>, for instance, the callback function is ternary.  The function must
                          return <info>true</info> in order to continue iterating over the <strong>$iterator</strong>.
                          
                          The function must return <info>true</info> in order to continue iterating over the
                          <strong>$iterator</strong>.
  <info>array      </info>  <strong>$args    </strong>  An <info>array</info> of arguments; each element of <strong>$args</strong> is passed to the callback
                          <strong>$function</strong> as separate argument.

<comment>Return:</comment>
  <info>int</info>  Returns the iteration count.

<comment>See Also:</comment>
   * <strong>array_walk()</strong>


id: iterator_count
type: function
doc:
<comment>Description:</comment>
  Count the elements in an iterator
  
  Count the elements in an iterator. <strong>iterator_count()</strong> is not guaranteed to retain the current
  position of the <strong>$iterator</strong>.

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>  The iterator being counted.

<comment>Return:</comment>
  <info>int</info>  The number of elements in <strong>$iterator</strong>.


id: iterator_to_array
type: function
doc:
<comment>Description:</comment>
  Copy the iterator into an array
  
  Copy the elements of an iterator into an array.

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>  The iterator being copied.
  <info>bool       </info>  <strong>$use_keys</strong>  Whether to use the iterator element keys as index.
                          
                          In PHP 5.5 and later, if a key is an <info>array</info> or <info>object</info>, a warning will be
                          generated. <info>null</info> keys will be converted to an empty string, <info>float</info> keys will
                          be truncated to their <info>int</info> counterpart, <info>resource</info> keys will generate a
                          warning and be converted to their resource ID, and <info>bool</info> keys will be
                          converted to integers.
                          
                          If this parameter is not set or set to <info>true</info>, duplicate keys will be
                          overwritten. The last value with a given key will be in the returned
                          <info>array</info>. Set this parameter to <info>false</info> to get all the values in any case.

<comment>Return:</comment>
  <info>array</info>  An <info>array</info> containing the elements of the <strong>$iterator</strong>.


id: join
type: function
doc:
<comment>Description:</comment>
  Alias di di implode
  
  Questa funzione è sinonimo di:  <strong>implode()</strong>.


id: jpeg2wbmp
type: function
doc:
<comment>Description:</comment>
  Convert JPEG image file to WBMP image file
  
  Converts a JPEG file into a WBMP file.

<comment>Param:</comment>
  <info>string</info>  <strong>$jpegname   </strong>  Path to JPEG file.
  <info>string</info>  <strong>$wbmpname   </strong>  Path to destination WBMP file.
  <info>int   </info>  <strong>$dest_height</strong>  Destination image height.
  <info>int   </info>  <strong>$dest_width </strong>  Destination image width.
  <info>int   </info>  <strong>$threshold  </strong>  Threshold value, between 0 and 8 (inclusive).

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.
        
        However, if libgd fails to output the image, this function returns <info>true</info>.

<comment>See Also:</comment>
   * <strong>png2wbmp()</strong>


id: json_decode
type: function
doc:
<comment>Description:</comment>
  Decodes a JSON string
  
  Takes a JSON encoded string and converts it into a PHP variable.

<comment>Param:</comment>
  <info>string  </info>  <strong>$json       </strong>  The <strong>$json</strong> <info>string</info> being decoded.
                          
                          This function only works with UTF-8 encoded strings.
                          
                          PHP implements a superset of JSON as specified in the original RFC 7159.
  <info>boolnull</info>  <strong>$associative</strong>  When <info>true</info>, JSON objects will be returned as associative <info>array</info>s; when
                          <info>false</info>, JSON objects will be returned as <info>object</info>s. When <info>null</info>, JSON objects
                          will be returned as associative <info>array</info>s or <info>object</info>s depending on whether
                          <info>JSON_OBJECT_AS_ARRAY</info> is set in the <strong>$flags</strong>.
  <info>int     </info>  <strong>$depth      </strong>  Maximum nesting depth of the structure being decoded.
  <info>int     </info>  <strong>$flags      </strong>  Bitmask of <info>JSON_BIGINT_AS_STRING</info>, <info>JSON_INVALID_UTF8_IGNORE</info>,
                          <info>JSON_INVALID_UTF8_SUBSTITUTE</info>, <info>JSON_OBJECT_AS_ARRAY</info>, <info>JSON_THROW_ON_ERROR</info>.
                          The behaviour of these constants is described on the JSON constants page.

<comment>Return:</comment>
  <info>mixed</info>  Returns the value encoded in <strong>$json</strong> in appropriate PHP type. Values <return>true</return>, <return>false</return> and <return>null</return> are
         returned as <info>true</info>, <info>false</info> and <info>null</info> respectively. <info>null</info> is returned if the <strong>$json</strong> cannot be
         decoded or if the encoded data is deeper than the nesting limit.

<comment>See Also:</comment>
   * <strong>json_encode()</strong>
   * <strong>json_last_error()</strong>


id: json_encode
type: function
doc:
<comment>Description:</comment>
  Returns the JSON representation of a value
  
  Returns a string containing the JSON representation of the supplied <strong>$value</strong>.
  
  The encoding is affected by the supplied <strong>$flags</strong> and additionally the encoding of float values
  depends on the value of serialize_precision.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The <strong>$value</strong> being encoded. Can be any type except a resource.
                 
                 All string data must be UTF-8 encoded.
                 
                 PHP implements a superset of JSON as specified in the original RFC 7159.
  <info>int  </info>  <strong>$flags</strong>  Bitmask consisting of <info>JSON_FORCE_OBJECT</info>, <info>JSON_HEX_QUOT</info>, <info>JSON_HEX_TAG</info>, <info>JSON_HEX_AMP</info>,
                 <info>JSON_HEX_APOS</info>, <info>JSON_INVALID_UTF8_IGNORE</info>, <info>JSON_INVALID_UTF8_SUBSTITUTE</info>,
                 <info>JSON_NUMERIC_CHECK</info>, <info>JSON_PARTIAL_OUTPUT_ON_ERROR</info>, <info>JSON_PRESERVE_ZERO_FRACTION</info>,
                 <info>JSON_PRETTY_PRINT</info>, <info>JSON_UNESCAPED_LINE_TERMINATORS</info>, <info>JSON_UNESCAPED_SLASHES</info>,
                 <info>JSON_UNESCAPED_UNICODE</info>, <info>JSON_THROW_ON_ERROR</info>. The behaviour of these constants is
                 described on the JSON constants page.
  <info>int  </info>  <strong>$depth</strong>  Set the maximum depth. Must be greater than zero.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns a JSON encoded <info>string</info> on success  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * JsonSerializable
   * <strong>json_decode()</strong>
   * <strong>json_last_error()</strong>
   * <strong>serialize()</strong>


id: json_last_error
type: function
doc:
<comment>Description:</comment>
  Returns the last error occurred
  
  Returns the last error (if any) occurred during the last JSON encoding/decoding, which did not
  specify <info>JSON_THROW_ON_ERROR</info>.

<comment>Return:</comment>
  <info>int</info>  Returns an integer, the value can be one of the following  constants:

<comment>See Also:</comment>
   * <strong>json_last_error_msg()</strong>
   * <strong>json_decode()</strong>
   * <strong>json_encode()</strong>


id: json_last_error_msg
type: function
doc:
<comment>Description:</comment>
  Returns the error string of the last json_encode() or json_decode() call
  
  Returns the error string of the last <strong>json_encode()</strong> or <strong>json_decode()</strong> call, which did not specify
  <info>JSON_THROW_ON_ERROR</info>.

<comment>Return:</comment>
  <info>string</info>  Returns the error message on success, or <return>"No error"</return> if no error has occurred.

<comment>See Also:</comment>
   * <strong>json_last_error()</strong>


id: judy_type
type: function
doc:
<comment>Description:</comment>
  Return the type of a Judy array
  
  <strong>judy_type()</strong> return an integer corresponding to the Judy  type of the specified Judy <strong>$array</strong>.

<comment>Param:</comment>
  <info>Judy</info>  <strong>$array</strong>  The <class>Judy</class> Array to test.

<comment>Return:</comment>
  <info>int</info>  Return an integer corresponding to a Judy type.


id: judy_version
type: function
doc:
<comment>Description:</comment>
  Return or print the current PHP Judy version
  
  Return a string of the PHP Judy version. If the return value is not used, the string will be
  printed.

<comment>Return:</comment>
  <info>string</info>  Return a string of the PHP Judy version.


id: key
type: function
doc:
<comment>Description:</comment>
  Estrae la chiave corrente da un array associativo
  
  <strong>key()</strong> restituisce la chiave corrispondente all'attuale posizione del puntatore interno all'array.

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  L'array.

<comment>Return:</comment>
  <info>mixed</info>  La funzione <strong>key()</strong> restituisce la chiave dell'elemento dell'array che è attualmente indicato
         dal puntatore interno. Non modifica il puntatore. Se il puntatore punta oltre la fine della
         lista degli elementi, oppure se l'array è vuoto, <strong>key()</strong> restituisce <info>null</info>.

<comment>See Also:</comment>
   * <strong>current()</strong>
   * <strong>next()</strong>


id: key_exists
type: function
doc:
<comment>Description:</comment>
  Alias di array_key_exists
  
  Questa funzione è sinonimo di:  <strong>array_key_exists()</strong>.


id: lcfirst
type: function
doc:
<comment>Description:</comment>
  Make a string's first character lowercase
  
  Returns a string with the first character of <strong>$string</strong> lowercased if that character is alphabetic.
  
  Note that 'alphabetic' is determined by the current locale. For instance, in the default "C"
  locale characters such as umlaut-a (ä) will not be converted.

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

<comment>Return:</comment>
  <info>string</info>  Returns the resulting string.

<comment>See Also:</comment>
   * <strong>ucfirst()</strong>
   * <strong>strtolower()</strong>
   * <strong>strtoupper()</strong>
   * <strong>ucwords()</strong>


id: lchgrp
type: function
doc:
<comment>Description:</comment>
  Changes group ownership of symlink
  
  Attempts to change the group of the symlink <strong>$filename</strong> to <strong>$group</strong>.
  
  Only the superuser may change the group of a symlink arbitrarily; other users may change the group
  of a symlink to any group of which that user is a member.

<comment>Param:</comment>
  <info>string   </info>  <strong>$filename</strong>  Path to the symlink.
  <info>stringint</info>  <strong>$group   </strong>  The group specified by name or number.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>chgrp()</strong>
   * <strong>lchown()</strong>
   * <strong>chown()</strong>
   * <strong>chmod()</strong>


id: lchown
type: function
doc:
<comment>Description:</comment>
  Changes user ownership of symlink
  
  Attempts to change the owner of the symlink <strong>$filename</strong> to user <strong>$user</strong>.
  
  Only the superuser may change the owner of a symlink.

<comment>Param:</comment>
  <info>string   </info>  <strong>$filename</strong>  Path to the file.
  <info>stringint</info>  <strong>$user    </strong>  User name or number.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>chown()</strong>
   * <strong>lchgrp()</strong>
   * <strong>chgrp()</strong>
   * <strong>chmod()</strong>


id: ldap_8859_to_t61
type: function
doc:
<comment>Description:</comment>
  Translate 8859 characters to t61 characters
  
  Translate <return>ISO-8859</return> characters to <return>t61</return> characters.
  
  This function is useful if you have to talk to a legacy  <return>LDAPv2</return> server.

<comment>Param:</comment>
  <info>string</info>  <strong>$value</strong>  The text to be translated.

<comment>Return:</comment>
  <info>stringfalse</info>  Return the <return>t61</return> translation of <strong>$value</strong>,  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_t61_to_8859()</strong>


id: ldap_add
type: function
doc:
<comment>Description:</comment>
  Add entries to LDAP directory
  
  Add entries in the LDAP directory.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn      </strong>  The distinguished name of an LDAP entity.
  <info>array    </info>  <strong>$entry   </strong>  An array that specifies the information about the entry. The values in the
                        entries are indexed by individual attributes. In case of multiple values for
                        an attribute, they are indexed using integers starting with 0.  ]]>
  <info>arraynull</info>  <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_add_ext()</strong>
   * <strong>ldap_delete()</strong>


id: ldap_add_ext
type: function
doc:
<comment>Description:</comment>
  Add entries to LDAP directory
  
  Does the same thing as <strong>ldap_add()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_add()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_bind
type: function
doc:
<comment>Description:</comment>
  Bind to LDAP directory
  
  Binds to the LDAP directory with specified RDN and password.

<comment>Param:</comment>
  <info>resource  </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>stringnull</info>  <strong>$dn      </strong>  
  <info>stringnull</info>  <strong>$password</strong>  

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_bind_ext()</strong>
   * <strong>ldap_unbind()</strong>


id: ldap_bind_ext
type: function
doc:
<comment>Description:</comment>
  Bind to LDAP directory
  
  Does the same thing as <strong>ldap_bind()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_bind()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_close
type: function
doc:
<comment>Description:</comment>
  Alias di ldap_unbind
  
  Questa funzione è sinonimo di:  <strong>ldap_unbind()</strong>.


id: ldap_compare
type: function
doc:
<comment>Description:</comment>
  Compare value of attribute found in entry specified with DN
  
  Compare <strong>$value</strong> of <strong>$attribute</strong> with value of same attribute in an LDAP directory entry.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap     </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn       </strong>  The distinguished name of an LDAP entity.
  <info>string   </info>  <strong>$attribute</strong>  The attribute name.
  <info>string   </info>  <strong>$value    </strong>  The compared value.
  <info>arraynull</info>  <strong>$controls </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>boolint</info>  Returns <info>true</info> if <strong>$value</strong> matches otherwise returns <info>false</info>. Returns -1 on error.


id: ldap_connect
type: function
doc:
<comment>Description:</comment>
  Connect to an LDAP server
  
  The following signature is still supported for backwards compatibility (except for using named
  parameters), but is considered deprecated and should not be used anymore!
  
  Creates an LDAP link identifier and checks whether the given <strong>$uri</strong> is plausible.
  
  This function does not open a connection. It checks whether the given parameters are plausible and
  can be used to open a connection as soon as one is needed.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$uri </strong>  A full LDAP URI of the form <return>ldap://hostname:port</return> or <return>ldaps://hostname:port</return> for
                     SSL encryption.
                     
                     You can also provide multiple LDAP-URIs separated by a space as one string
                     
                     Note that <return>hostname:port</return> is not a supported LDAP URI as the schema is missing.
  <info>string    </info>  <strong>$host</strong>  The hostname to connect to.
  <info>int       </info>  <strong>$port</strong>  The port to connect to.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns a positive LDAP link identifier when the provided LDAP URI seems plausible.
                 It's a syntactic check of the provided parameter but the server(s) will not be
                 contacted! If the syntactic check fails it returns <info>false</info>. <strong>ldap_connect()</strong> will
                 otherwise return a <info>resource</info> as it does not actually connect but just initializes
                 the connecting parameters.  The actual connect happens with the next calls to
                 ldap_* funcs, usually with <strong>ldap_bind()</strong>.
                 
                 If no argument is specified then the link identifier of the already opened link
                 will be returned.

<comment>See Also:</comment>
   * <strong>ldap_bind()</strong>


id: ldap_control_paged_result
type: function
doc:
<comment>Description:</comment>
  Send LDAP pagination control
  
  Enable LDAP pagination by sending the pagination control (page size, cookie...).

<comment>Param:</comment>
  <info>resource</info>  <strong>$link      </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>int     </info>  <strong>$pagesize  </strong>  The number of entries by page.
  <info>bool    </info>  <strong>$iscritical</strong>  Indicates whether the pagination is critical or not.  If true and if the
                         server doesn't support pagination, the search will return no result.
  <info>string  </info>  <strong>$cookie    </strong>  An opaque structure sent by the server
                         (<strong>ldap_control_paged_result_response()</strong>).

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_control_paged_result_response()</strong>
   * RFC2696 : LDAP Control Extension for Simple
    Paged Results Manipulation


id: ldap_control_paged_result_response
type: function
doc:
<comment>Description:</comment>
  Retrieve the LDAP pagination cookie
  
  Retrieve the pagination information send by the server.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link     </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result   </strong>  
  <info>string  </info>  <strong>$cookie   </strong>  An opaque structure sent by the server.
  <info>int     </info>  <strong>$estimated</strong>  The estimated number of entries to retrieve.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_control_paged_result()</strong>
   * RFC2696 : LDAP Control Extension for Simple
    Paged Results Manipulation


id: ldap_count_entries
type: function
doc:
<comment>Description:</comment>
  Count the number of entries in a search
  
  Returns the number of entries stored in the result of previous search operations.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result</strong>  The internal LDAP result.

<comment>Return:</comment>
  <info>int</info>  Returns number of entries in the result or <info>false</info> on error.


id: ldap_delete
type: function
doc:
<comment>Description:</comment>
  Delete an entry from a directory
  
  Deletes a particular entry in LDAP directory.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn      </strong>  The distinguished name of an LDAP entity.
  <info>arraynull</info>  <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_delete_ext()</strong>
   * <strong>ldap_add()</strong>


id: ldap_delete_ext
type: function
doc:
<comment>Description:</comment>
  Delete an entry from a directory
  
  Does the same thing as <strong>ldap_delete()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_delete()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_dn2ufn
type: function
doc:
<comment>Description:</comment>
  Convert DN to User Friendly Naming format
  
  Turns the specified <strong>$dn</strong>, into a more user-friendly form, stripping off type names.

<comment>Param:</comment>
  <info>string</info>  <strong>$dn</strong>  The distinguished name of an LDAP entity.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the user friendly name,  o <info>false</info> in caso di fallimento.


id: ldap_err2str
type: function
doc:
<comment>Description:</comment>
  Convert LDAP error number into string error message
  
  Returns the string error message explaining the error number <strong>$errno</strong>. While LDAP errno numbers are
  standardized, different libraries return different or even localized textual error messages. Never
  check for a specific error message text, but always use an error number to check.

<comment>Param:</comment>
  <info>int</info>  <strong>$errno</strong>  The error number.

<comment>Return:</comment>
  <info>string</info>  Returns the error message, as a string.

<comment>See Also:</comment>
   * <strong>ldap_errno()</strong>
   * <strong>ldap_error()</strong>


id: ldap_errno
type: function
doc:
<comment>Description:</comment>
  Return the LDAP error number of the last LDAP command
  
  Returns the standardized error number returned by the last LDAP command. This number can be
  converted into a textual error message using <strong>ldap_err2str()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.

<comment>Return:</comment>
  <info>int</info>  Return the LDAP error number of the last LDAP command for this link.

<comment>See Also:</comment>
   * <strong>ldap_err2str()</strong>
   * <strong>ldap_error()</strong>


id: ldap_error
type: function
doc:
<comment>Description:</comment>
  Return the LDAP error message of the last LDAP command
  
  Returns the string error message explaining the error generated by the last LDAP command for the
  given <strong>$ldap</strong>. While LDAP errno numbers are standardized, different libraries return different or
  even localized textual error messages. Never check for a specific error message text, but always
  use an error number to check.
  
  Unless you lower your warning level in your php.ini sufficiently or prefix your LDAP commands with
  <return>@</return> (at) characters to suppress warning output, the errors generated will also show up in your HTML
  output.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.

<comment>Return:</comment>
  <info>string</info>  Returns string error message.

<comment>See Also:</comment>
   * <strong>ldap_err2str()</strong>
   * <strong>ldap_errno()</strong>


id: ldap_escape
type: function
doc:
<comment>Description:</comment>
  Escape a string for use in an LDAP filter or DN
  
  Escapes <strong>$value</strong> for use in the context implied by <strong>$flags</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$value </strong>  The value to escape.
  <info>string</info>  <strong>$ignore</strong>  Characters to ignore when escaping.
  <info>int   </info>  <strong>$flags </strong>  The context the escaped string will be used in: <info>LDAP_ESCAPE_FILTER</info> for filters to
                   be used with <strong>ldap_search()</strong>, or <info>LDAP_ESCAPE_DN</info> for DNs. If neither flag is passed,
                   all chars are escaped.

<comment>Return:</comment>
  <info>string</info>  Returns the escaped string.


id: ldap_exop
type: function
doc:
<comment>Description:</comment>
  Performs an extended operation
  
  Performs an extended operation on the specified <strong>$link</strong> with <strong>$reqoid</strong> the OID of the operation and
  <strong>$reqdata</strong> the data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link       </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string  </info>  <strong>$reqoid     </strong>  The extended operation request OID. You may use one of
                          <info>LDAP_EXOP_START_TLS</info>, <info>LDAP_EXOP_MODIFY_PASSWD</info>, <info>LDAP_EXOP_REFRESH</info>,
                          <info>LDAP_EXOP_WHO_AM_I</info>, <info>LDAP_EXOP_TURN</info>, or a string with the OID of the
                          operation you want to send.
  <info>string  </info>  <strong>$reqdata    </strong>  The extended operation request data. May be NULL for some operations like
                          <info>LDAP_EXOP_WHO_AM_I</info>, may also need to be BER encoded.
  <info>array   </info>  <strong>$serverctrls</strong>  Array of LDAP Controls to send with the request.
  <info>string  </info>  <strong>$retdata    </strong>  Will be filled with the extended operation response data if provided. If
                          not provided you may use ldap_parse_exop on the result object later to get
                          this data.
  <info>string  </info>  <strong>$retoid     </strong>  Will be filled with the response OID if provided, usually equal to the
                          request OID.

<comment>Return:</comment>
  <info>mixed</info>  When used with <strong>$retdata</strong>, returns <info>true</info> on success or <info>false</info> on error. When used without
         <strong>$retdata</strong>, returns a result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_parse_result()</strong>
   * <strong>ldap_parse_exop()</strong>
   * <strong>ldap_exop_whoami()</strong>
   * <strong>ldap_exop_refresh()</strong>
   * <strong>ldap_exop_passwd()</strong>


id: ldap_exop_passwd
type: function
doc:
<comment>Description:</comment>
  PASSWD extended operation helper
  
  Performs a PASSWD extended operation.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap        </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string  </info>  <strong>$user        </strong>  dn of the user to change the password of.
  <info>string  </info>  <strong>$old_password</strong>  The old password of this user. May be ommited depending of server
                           configuration.
  <info>string  </info>  <strong>$new_password</strong>  The new password for this user. May be omitted or empty to have a
                           generated password.
  <info>array   </info>  <strong>$controls    </strong>  If provided, a password policy request control is send with the request
                           and this is filled with an array of LDAP Controls returned with the
                           request.

<comment>Return:</comment>
  <info>stringbool</info>  Returns the generated password if <strong>$new_password</strong> is empty or omitted. Otherwise returns
              <info>true</info> on success and <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>ldap_exop()</strong>
   * <strong>ldap_parse_exop()</strong>


id: ldap_exop_refresh
type: function
doc:
<comment>Description:</comment>
  Refresh extended operation helper
  
  Performs a Refresh extended operation and returns the data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string  </info>  <strong>$dn  </strong>  dn of the entry to refresh.
  <info>int     </info>  <strong>$ttl </strong>  Time in seconds (between 1 and 31557600) that the client requests that the entry
                   exists in the directory before being automatically removed.

<comment>Return:</comment>
  <info>intfalse</info>  From RFC: The responseTtl field is the time in seconds which the server chooses to have
            as the time-to-live field for that entry.  It must not be any smaller than that which
            the client requested, and it may be larger. However, to allow servers to maintain a
            relatively accurate directory, and to prevent clients from abusing the dynamic
            extensions, servers are permitted to shorten a client-requested time-to-live value, down
            to a minimum of 86400 seconds (one day).
             <info>false</info> will be returned on error.

<comment>See Also:</comment>
   * <strong>ldap_exop()</strong>


id: ldap_exop_whoami
type: function
doc:
<comment>Description:</comment>
  WHOAMI extended operation helper
  
  Performs a WHOAMI extended operation and returns the data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.

<comment>Return:</comment>
  <info>stringbool</info>  The data returned by the server, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_exop()</strong>


id: ldap_explode_dn
type: function
doc:
<comment>Description:</comment>
  Splits DN into its component parts
  
  Splits the DN returned by <strong>ldap_get_dn()</strong> and breaks it up into its component parts. Each part is
  known as Relative Distinguished Name, or RDN.

<comment>Param:</comment>
  <info>string</info>  <strong>$dn         </strong>  The distinguished name of an LDAP entity.
  <info>int   </info>  <strong>$with_attrib</strong>  Used to request if the RDNs are returned with only values or their
                        attributes as well.  To get RDNs with the attributes (i.e. in
                        attribute=value format) set <strong>$with_attrib</strong> to 0 and to get only values set it
                        to 1.

<comment>Return:</comment>
  <info>arrayfalse</info>  Returns an array of all DN components,  o <info>false</info> in caso di fallimento. The first
              element in the array has <return>count</return> key and represents the number of returned values, next
              elements are numerically indexed DN components.


id: ldap_first_attribute
type: function
doc:
<comment>Description:</comment>
  Return first attribute
  
  Gets the first attribute in the given entry. Remaining attributes are retrieved by calling
  <strong>ldap_next_attribute()</strong> successively.
  
  Similar to reading entries, attributes are also read one by one from a particular entry.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap          </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry         </strong>  
  <info>        </info>  <strong>$ber_identifier</strong>  <strong>$ber_identifier</strong> is the identifier to internal memory location pointer.
                             It is passed by reference. The same <strong>$ber_identifier</strong> is passed to
                             <strong>ldap_next_attribute()</strong> , which modifies that pointer.
                             
                             This parameter is no longer used as this is now handled automatically
                             by PHP. For backwards compatibility PHP will not throw an error if this
                             parameter is passed.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the first attribute in the entry on success and <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_next_attribute()</strong>
   * <strong>ldap_get_attributes()</strong>


id: ldap_first_entry
type: function
doc:
<comment>Description:</comment>
  Return first result id
  
  Returns the entry identifier for first entry in the result. This entry identifier is then supplied
  to <strong>ldap_next_entry()</strong> routine to get successive entries from the result.
  
  Entries in the LDAP result are read sequentially using the <strong>ldap_first_entry()</strong> and
  <strong>ldap_next_entry()</strong> functions.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result</strong>  

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns the result entry identifier for the first entry on success and <info>false</info> on
                 error.

<comment>See Also:</comment>
   * <strong>ldap_get_entries()</strong>


id: ldap_first_reference
type: function
doc:
<comment>Description:</comment>
  Return first reference
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Return:</comment>
  <info>resourcefalse</info>  


id: ldap_free_result
type: function
doc:
<comment>Description:</comment>
  Free result memory
  
  Frees up the memory allocated internally to store the result. All result memory will be
  automatically freed when the script terminates.
  
  Typically all the memory allocated for the LDAP result gets freed at the end of the script. In
  case the script is making successive searches which return large result sets, <strong>ldap_free_result()</strong>
  could be called to keep the runtime memory usage by the script low.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: ldap_get_attributes
type: function
doc:
<comment>Description:</comment>
  Get attributes from a search result entry
  
  Reads attributes and values from an entry in the search result.
  
  Having located a specific entry in the directory, you can find out what information is held for
  that entry by using this call. You would use this call for an application which "browses"
  directory entries and/or where you do not know the structure of the directory entries. In many
  applications you will be searching for a specific attribute such as an email address or a surname,
  and won't care what other data is held.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry</strong>  

<comment>Return:</comment>
  <info>array</info>  Returns a complete entry information in a multi-dimensional array on success and <info>false</info> on
         error.

<comment>See Also:</comment>
   * <strong>ldap_first_attribute()</strong>
   * <strong>ldap_next_attribute()</strong>


id: ldap_get_dn
type: function
doc:
<comment>Description:</comment>
  Get the DN of a result entry
  
  Finds out the DN of an entry in the result.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry</strong>  

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the DN of the result entry and <info>false</info> on error.


id: ldap_get_entries
type: function
doc:
<comment>Description:</comment>
  Get all result entries
  
  Reads multiple entries from the given result, and then reading the attributes and multiple values.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result</strong>  

<comment>Return:</comment>
  <info>arrayfalse</info>  Returns a complete result information in a multi-dimensional array on success and
              <info>false</info> on error.
              
              The structure of the array is as follows. The attribute index is converted to
              lowercase. (Attributes are case-insensitive for directory servers, but not when used
              as array indices.)

<comment>See Also:</comment>
   * <strong>ldap_first_entry()</strong>
   * <strong>ldap_next_entry()</strong>


id: ldap_get_option
type: function
doc:
<comment>Description:</comment>
  Get the current value for given option
  
  Sets <strong>$value</strong> to the value of the specified option.

<comment>Param:</comment>
  <info>resource      </info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>int           </info>  <strong>$option</strong>  The parameter <strong>$option</strong> can be one of:
                           OptionTypesince<info>LDAP_OPT_DEREF</info><info>int</info><info>LDAP_OPT_SIZELIMIT</info><info>int</info><info>LDAP_OPT_TIMELIMIT</info><info>int</info><info>LDAP_OPT_NETWORK_TIMEOUT</info><info>int</info><info>LDAP_OPT_PROTOCOL_VERSION</info><info>int</info><info>LDAP_OPT_ERROR_NUMBER</info><info>int</info><info>LDAP_OPT_DIAGNOSTIC_MESSAGE</info><info>int</info><info>LDAP_OPT_REFERRALS</info><info>int</info><info>LDAP_OPT_RESTART</info><info>int</info><info>LDAP_OPT_HOST_NAME</info><info>string</info><info>LDAP_OPT_ERROR_STRING</info><info>string</info><info>LDAP_OPT_MATCHED_DN</info><info>string</info><info>LDAP_OPT_SERVER_CONTROLS</info><info>array</info><info>LDAP_OPT_CLIENT_CONTROLS</info><info>array</info><info>LDAP_OPT_X_KEEPALIVE_IDLE</info><info>int</info>7.1<info>LDAP_OPT_X_KEEPALIVE_PROBES</info><info>int</info>7.1<info>LDAP_OPT_X_KEEPALIVE_INTERVAL</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_CACERTDIR</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_CACERTFILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_CERTFILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_CIPHER_SUITE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_CRLCHECK</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_CRL_NONE</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_CRL_PEER</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_CRL_ALL</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_CRLFILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_DHFILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_KEYILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_PACKAGE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_PROTOCOL_MIN</info><info>int</info>7.1<info>LDAP_OPT_X_TLS_RANDOM_FILE</info><info>string</info>7.1<info>LDAP_OPT_X_TLS_REQUIRE_CERT</info><info>int</info>
  <info>arraystringint</info>  <strong>$value </strong>  This will be set to the option value.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_set_option()</strong>


id: ldap_get_values
type: function
doc:
<comment>Description:</comment>
  Get all values from a result entry
  
  Reads all the values of the attribute in the entry in the result.
  
  This call needs a <strong>$entry</strong>, so needs to be preceded by one of the ldap search calls and one of the
  calls to get an individual entry.
  
  You application will either be hard coded to look for certain attributes (such as "surname" or
  "mail") or you will have to use the <strong>ldap_get_attributes()</strong> call to work out what attributes exist
  for a given entry.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap     </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry    </strong>  
  <info>string  </info>  <strong>$attribute</strong>  

<comment>Return:</comment>
  <info>arrayfalse</info>  Returns an array of values for the attribute on success and <info>false</info> on error. The number
              of values can be found by indexing "count" in the resultant array. Individual values
              are accessed by integer index in the array.  The first index is 0.
              
              LDAP allows more than one entry for an attribute, so it can, for example, store a
              number of email addresses for one person's directory entry all labeled with the
              attribute "mail"  return_value["count"] = number of values for attribute
              return_value[0] = first value of attribute return_value[i] = ith value of attribute

<comment>See Also:</comment>
   * <strong>ldap_get_values_len()</strong>


id: ldap_get_values_len
type: function
doc:
<comment>Description:</comment>
  Get all binary values from a result entry
  
  Reads all the values of the attribute in the entry in the result.
  
  This function is used exactly like <strong>ldap_get_values()</strong> except that it handles binary data and not
  string data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap     </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry    </strong>  
  <info>string  </info>  <strong>$attribute</strong>  

<comment>Return:</comment>
  <info>arrayfalse</info>  Returns an array of values for the attribute on success and <info>false</info> on error. Individual
              values are accessed by integer index in the array. The first index is 0. The number of
              values can be found by indexing "count" in the resultant array.

<comment>See Also:</comment>
   * <strong>ldap_get_values()</strong>


id: ldap_list
type: function
doc:
<comment>Description:</comment>
  Single-level search
  
  Performs the search for a specified <strong>$filter</strong> on the directory with the scope <info>LDAP_SCOPE_ONELEVEL</info>.
  
  <info>LDAP_SCOPE_ONELEVEL</info> means that the search should only return information that is at the level
  immediately below the <strong>$base</strong> given in the call. (Equivalent to typing "ls" and getting a list of
  files and folders in the current working directory.)

<comment>Param:</comment>
  <info>resourcearray</info>  <strong>$ldap           </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>arraystring  </info>  <strong>$base           </strong>  The base DN for the directory.
  <info>arraystring  </info>  <strong>$filter         </strong>  
  <info>array        </info>  <strong>$attributes     </strong>  An array of the required attributes, e.g. array("mail", "sn",
                                   "cn"). Note that the "dn" is always returned irrespective of
                                   which attributes types are requested.
                                   
                                   Using this parameter is much more efficient than the default
                                   action (which is to return all attributes and their associated
                                   values). The use of this parameter should therefore be considered
                                   good practice.
  <info>int          </info>  <strong>$attributes_only</strong>  Should be set to 1 if only attribute types are wanted. If set to
                                   0 both attributes types and attribute values are fetched which is
                                   the default behaviour.
  <info>int          </info>  <strong>$sizelimit      </strong>  Enables you to limit the count of entries fetched. Setting this
                                   to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset sizelimit. You
                                   can set it lower though.
                                   
                                   Some directory server hosts will be configured to return no more
                                   than a preset number of entries. If this occurs, the server will
                                   indicate that it has only returned a partial results set. This
                                   also occurs if you use this parameter to limit the count of
                                   fetched entries.
  <info>int          </info>  <strong>$timelimit      </strong>  Sets the number of seconds how long is spend on the search.
                                   Setting this to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset timelimit. You
                                   can set it lower though.
  <info>int          </info>  <strong>$deref          </strong>  Specifies how aliases should be handled during the search. It can
                                   be one of the following: <info>LDAP_DEREF_NEVER</info> - (default) aliases are
                                   never dereferenced. <info>LDAP_DEREF_SEARCHING</info> - aliases should be
                                   dereferenced during the search but not when locating the base
                                   object of the search. <info>LDAP_DEREF_FINDING</info> - aliases should be
                                   dereferenced when locating the base object but not during the
                                   search. <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced
                                   always.
                                   
                                   <info>LDAP_DEREF_NEVER</info> - (default) aliases are never dereferenced.
                                   
                                   <info>LDAP_DEREF_SEARCHING</info> - aliases should be dereferenced during the
                                   search but not when locating the base object of the search.
                                   
                                   <info>LDAP_DEREF_FINDING</info> - aliases should be dereferenced when locating
                                   the base object but not during the search.
                                   
                                   <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced always.
  <info>arraynull    </info>  <strong>$controls       </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>resourcearrayfalse</info>  Returns a search result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_search()</strong>


id: ldap_mod_add
type: function
doc:
<comment>Description:</comment>
  Add attribute values to current attributes
  
  Adds one or more attribute values to the specified <strong>$dn</strong>. To add a whole new object see <strong>ldap_add()</strong>
  function.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn      </strong>  The distinguished name of an LDAP entity.
  <info>array    </info>  <strong>$entry   </strong>  An associative array listing the attirbute values to add. If an attribute
                        was not existing yet it will be added. If an attribute is existing you can
                        only add values to it if it supports multiple values.
  <info>arraynull</info>  <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_mod_add_ext()</strong>
   * <strong>ldap_mod_del()</strong>
   * <strong>ldap_mod_replace()</strong>
   * <strong>ldap_modify_batch()</strong>


id: ldap_mod_add_ext
type: function
doc:
<comment>Description:</comment>
  Add attribute values to current attributes
  
  Does the same thing as <strong>ldap_mod_add()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_mod_add()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_mod_del
type: function
doc:
<comment>Description:</comment>
  Delete attribute values from current attributes
  
  Removes one or more attribute values from the specified <strong>$dn</strong>. Object deletions are done by the
  <strong>ldap_delete()</strong> function.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn      </strong>  The distinguished name of an LDAP entity.
  <info>array    </info>  <strong>$entry   </strong>  
  <info>arraynull</info>  <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_mod_del_ext()</strong>
   * <strong>ldap_mod_add()</strong>
   * <strong>ldap_mod_replace()</strong>
   * <strong>ldap_modify_batch()</strong>


id: ldap_mod_del_ext
type: function
doc:
<comment>Description:</comment>
  Delete attribute values from current attributes
  
  Does the same thing as <strong>ldap_mod_del()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_mod_del()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_mod_replace
type: function
doc:
<comment>Description:</comment>
  Replace attribute values with new ones
  
  Replaces one or more attributes from the specified <strong>$dn</strong>. It may also add or remove attributes.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap    </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn      </strong>  The distinguished name of an LDAP entity.
  <info>array    </info>  <strong>$entry   </strong>  An associative array listing the attributes to replace. Sending an empty
                        array as value will remove the attribute, while sending an attribute not
                        existing yet on this entry will add it.
  <info>arraynull</info>  <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_mod_replace_ext()</strong>
   * <strong>ldap_mod_del()</strong>
   * <strong>ldap_mod_add()</strong>
   * <strong>ldap_modify_batch()</strong>


id: ldap_mod_replace_ext
type: function
doc:
<comment>Description:</comment>
  Replace attribute values with new ones
  
  Does the same thing as <strong>ldap_mod_replace()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_mod_replace()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_modify
type: function
doc:
<comment>Description:</comment>
  Alias di ldap_mod_replace
  
  Questa funzione è sinonimo di:  <strong>ldap_mod_replace()</strong>.

<comment>See Also:</comment>
   * <strong>ldap_rename()</strong>


id: ldap_modify_batch
type: function
doc:
<comment>Description:</comment>
  Batch and execute modifications on an LDAP entry
  
  Modifies an existing entry in the LDAP directory. Allows detailed specification of the
  modifications to perform.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap              </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn                </strong>  The distinguished name of an LDAP entity.
  <info>array    </info>  <strong>$modifications_info</strong>  An array that specifies the modifications to make. Each entry in
                                  this array is an associative array with two or three keys: <return>attrib</return>
                                  maps to the name of the attribute to modify, <return>modtype</return> maps to the
                                  type of modification to perform, and (depending on the type of
                                  modification) <return>values</return> maps to an array of attribute values relevant
                                  to the modification.
                                  
                                  Possible values for <return>modtype</return> include: <info>LDAP_MODIFY_BATCH_ADD</info> Each
                                  value specified through <return>values</return> is added (as an additional value)
                                  to the attribute named by <return>attrib</return>. <info>LDAP_MODIFY_BATCH_REMOVE</info> Each
                                  value specified through <return>values</return> is removed from the attribute named
                                  by <return>attrib</return>. Any value of the attribute not contained in the <return>values</return>
                                  array will remain untouched. <info>LDAP_MODIFY_BATCH_REMOVE_ALL</info> All
                                  values are removed from the attribute named by <return>attrib</return>. A <return>values</return>
                                  entry must not be provided. <info>LDAP_MODIFY_BATCH_REPLACE</info> All current
                                  values of the attribute named by <return>attrib</return> are replaced with the
                                  values specified through <return>values</return>.
                                  
                                  Each value specified through <return>values</return> is added (as an additional
                                  value) to the attribute named by <return>attrib</return>.
                                  
                                  Each value specified through <return>values</return> is removed from the attribute
                                  named by <return>attrib</return>. Any value of the attribute not contained in the
                                  <return>values</return> array will remain untouched.
                                  
                                  All values are removed from the attribute named by <return>attrib</return>. A
                                  <return>values</return> entry must not be provided.
                                  
                                  All current values of the attribute named by <return>attrib</return> are replaced
                                  with the values specified through <return>values</return>.
                                  
                                  Note that any value for <return>attrib</return> must be a string, any value for
                                  <return>values</return> must be an array of strings, and any value for <return>modtype</return> must
                                  be one of the LDAP_MODIFY_BATCH_* constants listed above.
  <info>arraynull</info>  <strong>$controls          </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: ldap_next_attribute
type: function
doc:
<comment>Description:</comment>
  Get the next attribute in result
  
  Retrieves the attributes in an entry. The first call to <strong>ldap_next_attribute()</strong> is made with the
  <strong>$entry</strong> returned from <strong>ldap_first_attribute()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap          </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$entry         </strong>  
  <info>        </info>  <strong>$ber_identifier</strong>  The internal state of the pointer is maintained by this parameter.
                             
                             This parameter is no longer used as this is now handled automatically
                             by PHP. For backwards compatibility PHP will not throw an error if this
                             parameter is passed.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the next attribute in an entry on success and <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_get_attributes()</strong>


id: ldap_next_entry
type: function
doc:
<comment>Description:</comment>
  Get next result entry
  
  Retrieve the entries stored in the result. Successive calls to the <strong>ldap_next_entry()</strong> return
  entries one by one till there are no more entries. The first call to <strong>ldap_next_entry()</strong> is made
  after the call to <strong>ldap_first_entry()</strong> with the <strong>$result</strong> as returned from the <strong>ldap_first_entry()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result</strong>  

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns entry identifier for the next entry in the result whose entries are being
                 read starting with <strong>ldap_first_entry()</strong>. If there are no more entries in the result
                 then it returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>ldap_get_entries()</strong>


id: ldap_next_reference
type: function
doc:
<comment>Description:</comment>
  Get next reference
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Return:</comment>
  <info>resourcefalse</info>  


id: ldap_parse_exop
type: function
doc:
<comment>Description:</comment>
  Parse result object from an LDAP extended operation
  
  Parse LDAP extended operation data from result object <strong>$result</strong>

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap         </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result       </strong>  An LDAP result resource, returned by <strong>ldap_exop()</strong>.
  <info>string  </info>  <strong>$response_data</strong>  Will be filled by the response data.
  <info>string  </info>  <strong>$response_oid </strong>  Will be filled by the response OID.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_exop()</strong>


id: ldap_parse_reference
type: function
doc:
<comment>Description:</comment>
  Extract information from reference entry
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

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


id: ldap_parse_result
type: function
doc:
<comment>Description:</comment>
  Extract information from result
  
  Parses an LDAP search result.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap             </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>        </info>  <strong>$result_identifier</strong>  An LDAP result resource, returned by <strong>ldap_list()</strong> or <strong>ldap_search()</strong>.
  <info>int     </info>  <strong>$error_code       </strong>  A reference to a variable that will be set to the LDAP error code in
                                the result, or <return>0</return> if no error occurred.
  <info>string  </info>  <strong>$matched_dn       </strong>  A reference to a variable that will be set to a matched DN if one
                                was recognised within the request, otherwise it will be set to <info>null</info>.
  <info>string  </info>  <strong>$error_message    </strong>  A reference to a variable that will be set to the LDAP error message
                                in the result, or an empty string if no error occurred.
  <info>array   </info>  <strong>$referrals        </strong>  A reference to a variable that will be set to an <info>array</info> set to all of
                                the referral strings in the result, or an empty array if no
                                referrals were returned.
  <info>array   </info>  <strong>$controls         </strong>  An <info>array</info> of LDAP Controls which have been sent with the response.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: ldap_read
type: function
doc:
<comment>Description:</comment>
  Read an entry
  
  Performs the search for a specified <strong>$filter</strong> on the directory with the scope <info>LDAP_SCOPE_BASE</info>. So it
  is equivalent to reading an entry from the directory.

<comment>Param:</comment>
  <info>resourcearray</info>  <strong>$ldap           </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>arraystring  </info>  <strong>$base           </strong>  The base DN for the directory.
  <info>arraystring  </info>  <strong>$filter         </strong>  An empty filter is not allowed. If you want to retrieve
                                   absolutely all information for this entry, use a filter of
                                   <return>objectClass=*</return>. If you know which entry types are used on the
                                   directory server, you might use an appropriate filter such as
                                   <return>objectClass=inetOrgPerson</return>.
  <info>array        </info>  <strong>$attributes     </strong>  An array of the required attributes, e.g. array("mail", "sn",
                                   "cn"). Note that the "dn" is always returned irrespective of
                                   which attributes types are requested.
                                   
                                   Using this parameter is much more efficient than the default
                                   action (which is to return all attributes and their associated
                                   values). The use of this parameter should therefore be considered
                                   good practice.
  <info>int          </info>  <strong>$attributes_only</strong>  Should be set to 1 if only attribute types are wanted. If set to
                                   0 both attributes types and attribute values are fetched which is
                                   the default behaviour.
  <info>int          </info>  <strong>$sizelimit      </strong>  Enables you to limit the count of entries fetched. Setting this
                                   to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset sizelimit. You
                                   can set it lower though.
                                   
                                   Some directory server hosts will be configured to return no more
                                   than a preset number of entries. If this occurs, the server will
                                   indicate that it has only returned a partial results set. This
                                   also occurs if you use this parameter to limit the count of
                                   fetched entries.
  <info>int          </info>  <strong>$timelimit      </strong>  Sets the number of seconds how long is spend on the search.
                                   Setting this to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset timelimit. You
                                   can set it lower though.
  <info>int          </info>  <strong>$deref          </strong>  Specifies how aliases should be handled during the search. It can
                                   be one of the following: <info>LDAP_DEREF_NEVER</info> - (default) aliases are
                                   never dereferenced. <info>LDAP_DEREF_SEARCHING</info> - aliases should be
                                   dereferenced during the search but not when locating the base
                                   object of the search. <info>LDAP_DEREF_FINDING</info> - aliases should be
                                   dereferenced when locating the base object but not during the
                                   search. <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced
                                   always.
                                   
                                   <info>LDAP_DEREF_NEVER</info> - (default) aliases are never dereferenced.
                                   
                                   <info>LDAP_DEREF_SEARCHING</info> - aliases should be dereferenced during the
                                   search but not when locating the base object of the search.
                                   
                                   <info>LDAP_DEREF_FINDING</info> - aliases should be dereferenced when locating
                                   the base object but not during the search.
                                   
                                   <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced always.
  <info>arraynull    </info>  <strong>$controls       </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>resourcearrayfalse</info>  Returns a search result identifier or <info>false</info> on error.


id: ldap_rename
type: function
doc:
<comment>Description:</comment>
  Modify the name of an entry
  
  The entry specified by <strong>$dn</strong> is renamed/moved.

<comment>Param:</comment>
  <info>resource </info>  <strong>$ldap          </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>string   </info>  <strong>$dn            </strong>  The distinguished name of an LDAP entity.
  <info>string   </info>  <strong>$new_rdn       </strong>  The new RDN.
  <info>string   </info>  <strong>$new_parent    </strong>  The new parent/superior entry.
  <info>bool     </info>  <strong>$delete_old_rdn</strong>  If <info>true</info> the old RDN value(s) is removed, else the old RDN value(s) is
                              retained as non-distinguished values of the entry.
  <info>arraynull</info>  <strong>$controls      </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_rename_ext()</strong>
   * <strong>ldap_modify()</strong>


id: ldap_rename_ext
type: function
doc:
<comment>Description:</comment>
  Modify the name of an entry
  
  Does the same thing as <strong>ldap_rename()</strong> but returns the LDAP result resource to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>resourcefalse</info>  Returns an LDAP result identifier or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ldap_rename()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_sasl_bind
type: function
doc:
<comment>Description:</comment>
  Bind to LDAP directory using SASL
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: ldap_search
type: function
doc:
<comment>Description:</comment>
  Search LDAP tree
  
  Performs the search for a specified filter on the directory with the scope of <info>LDAP_SCOPE_SUBTREE</info>.
  This is equivalent to searching the entire directory.
  
  From 4.0.5 on it's also possible to do parallel searches. To do this you use an array of link
  identifiers, rather than a single identifier, as the first argument. If you don't want the same
  base DN and the same filter for all the searches, you can also use an array of base DNs and/or an
  array of filters. Those arrays must be of the same size as the link identifier array since the
  first entries of the arrays are used for one search, the second entries are used for another, and
  so on. When doing parallel searches an array of search result identifiers is returned, except in
  case of error, then the entry corresponding to the search will be <info>false</info>. This is very much like
  the value normally returned, except that a result identifier is always returned when a search was
  made. There are some rare cases where the normal search returns <info>false</info> while the parallel search
  returns an identifier.

<comment>Param:</comment>
  <info>resourcearray</info>  <strong>$ldap           </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>arraystring  </info>  <strong>$base           </strong>  The base DN for the directory.
  <info>arraystring  </info>  <strong>$filter         </strong>  The search filter can be simple or advanced, using boolean
                                   operators in the format described in the LDAP documentation (see
                                   the Netscape Directory SDK or RFC4515 for full information on
                                   filters).
  <info>array        </info>  <strong>$attributes     </strong>  An array of the required attributes, e.g. <return>array("mail", "sn",
                                   "cn")</return>. Note that the "dn" is always returned irrespective of
                                   which attributes types are requested.
                                   
                                   Using this parameter is much more efficient than the default
                                   action (which is to return all attributes and their associated
                                   values). The use of this parameter should therefore be considered
                                   good practice.
  <info>int          </info>  <strong>$attributes_only</strong>  Should be set to 1 if only attribute types are wanted. If set to
                                   0 both attributes types and attribute values are fetched which is
                                   the default behaviour.
  <info>int          </info>  <strong>$sizelimit      </strong>  Enables you to limit the count of entries fetched. Setting this
                                   to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset sizelimit. You
                                   can set it lower though.
                                   
                                   Some directory server hosts will be configured to return no more
                                   than a preset number of entries. If this occurs, the server will
                                   indicate that it has only returned a partial results set. This
                                   also occurs if you use this parameter to limit the count of
                                   fetched entries.
  <info>int          </info>  <strong>$timelimit      </strong>  Sets the number of seconds how long is spend on the search.
                                   Setting this to 0 means no limit.
                                   
                                   This parameter can NOT override server-side preset timelimit. You
                                   can set it lower though.
  <info>int          </info>  <strong>$deref          </strong>  Specifies how aliases should be handled during the search. It can
                                   be one of the following: <info>LDAP_DEREF_NEVER</info> - (default) aliases are
                                   never dereferenced. <info>LDAP_DEREF_SEARCHING</info> - aliases should be
                                   dereferenced during the search but not when locating the base
                                   object of the search. <info>LDAP_DEREF_FINDING</info> - aliases should be
                                   dereferenced when locating the base object but not during the
                                   search. <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced
                                   always.
                                   
                                   <info>LDAP_DEREF_NEVER</info> - (default) aliases are never dereferenced.
                                   
                                   <info>LDAP_DEREF_SEARCHING</info> - aliases should be dereferenced during the
                                   search but not when locating the base object of the search.
                                   
                                   <info>LDAP_DEREF_FINDING</info> - aliases should be dereferenced when locating
                                   the base object but not during the search.
                                   
                                   <info>LDAP_DEREF_ALWAYS</info> - aliases should be dereferenced always.
  <info>arraynull    </info>  <strong>$controls       </strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>resourcearrayfalse</info>  Returns a search result identifier or <info>false</info> on error.


id: ldap_set_option
type: function
doc:
<comment>Description:</comment>
  Set the value of the given option
  
  Sets the value of the specified option to be <strong>$value</strong>.

<comment>Param:</comment>
  <info>resourcenull      </info>  <strong>$ldap  </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>int               </info>  <strong>$option</strong>  The parameter <strong>$option</strong> can be one of: OptionTypeAvailable
                               since<info>LDAP_OPT_DEREF</info><info>int</info><info>LDAP_OPT_SIZELIMIT</info><info>int</info><info>LDAP_OPT_TIMELIMIT</info><info>int</info><info>LDAP_OPT_NETWORK_TIMEOUT</info><info>int</info><info>LDAP_OPT_PROTOCOL_VERSION</info><info>int</info><info>LDAP_OPT_ERROR_NUMBER</info><info>int</info><info>LDAP_OPT_REFERRALS</info><info>bool</info><info>LDAP_OPT_RESTART</info><info>bool</info><info>LDAP_OPT_HOST_NAME</info><info>string</info><info>LDAP_OPT_ERROR_STRING</info><info>string</info><info>LDAP_OPT_DIAGNOSTIC_MESSAGE</info><info>string</info><info>LDAP_OPT_MATCHED_DN</info><info>string</info><info>LDAP_OPT_SERVER_CONTROLS</info><info>array</info><info>LDAP_OPT_CLIENT_CONTROLS</info><info>array</info><info>LDAP_OPT_X_KEEPALIVE_IDLE</info><info>int</info>PHP
                               7.1.0<info>LDAP_OPT_X_KEEPALIVE_PROBES</info><info>int</info>PHP
                               7.1.0<info>LDAP_OPT_X_KEEPALIVE_INTERVAL</info><info>int</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CACERTDIR</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CACERTFILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CERTFILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CIPHER_SUITE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CRLCHECK</info><info>int</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_CRLFILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_DHFILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_KEYFILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_PROTOCOL_MIN</info><info>int</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_RANDOM_FILE</info><info>string</info>PHP
                               7.1.0<info>LDAP_OPT_X_TLS_REQUIRE_CERT</info><info>int</info>PHP 7.0.5
                               
                               <info>LDAP_OPT_SERVER_CONTROLS</info> and  <info>LDAP_OPT_CLIENT_CONTROLS</info> require a list
                               of controls, this means that the value must be an array of controls.
                               A control consists of an oid identifying the control, an optional
                               value, and an optional flag for criticality. In PHP a control is
                               given by an array containing an element with the key oid and string
                               value, and two optional elements. The optional elements are key value
                               with string value and key iscritical with boolean value. iscritical
                               defaults to <info>false</info> if not supplied. See
                               draft-ietf-ldapext-ldap-c-api-xx.txt for details. See also the second
                               example below.
  <info>arraystringintbool</info>  <strong>$value </strong>  The new value for the specified <strong>$option</strong>.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_get_option()</strong>


id: ldap_set_rebind_proc
type: function
doc:
<comment>Description:</comment>
  Set a callback function to do re-binds on referral chasing
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

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


id: ldap_sort
type: function
doc:
<comment>Description:</comment>
  Sort LDAP result entries on the client side
  
  Sort the result of a LDAP search, returned by <strong>ldap_search()</strong>.
  
  As this function sorts the returned values on the client side it is possible that  you might not
  get the expected results in case you reach the <strong>$sizelimit</strong> either of the server or defined within
  <strong>ldap_search()</strong>.
  
  This feature has been
  DEPRECATED as of PHP 7.0.0. Relying on this feature
  is highly discouraged.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link      </strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result    </strong>  An search result identifier, returned by <strong>ldap_search()</strong>.
  <info>string  </info>  <strong>$sortfilter</strong>  The attribute to use as a key in the sort.

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


id: ldap_start_tls
type: function
doc:
<comment>Description:</comment>
  Start TLS
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

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


id: ldap_t61_to_8859
type: function
doc:
<comment>Description:</comment>
  Translate t61 characters to 8859 characters
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Return:</comment>
  <info>stringfalse</info>  


id: ldap_unbind
type: function
doc:
<comment>Description:</comment>
  Unbind from LDAP directory
  
  Unbinds from the LDAP directory.

<comment>Param:</comment>
  <info>resource</info>  <strong>$ldap</strong>  An LDAP link identifier, returned by <strong>ldap_connect()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>ldap_bind()</strong>


id: libXMLError
type: class
doc:
<comment>Description:</comment>
  Contains various information about errors thrown by libxml. The error codes are described within
  the official  xmlError API documentation.


id: libxml_clear_errors
type: function
doc:
<comment>Description:</comment>
  Svuota il buffer di errori libxml
    
  
  <strong>libxml_clear_errors()</strong> svuota il buffer di errori libxml.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>libxml_get_errors()</strong>
   * <strong>libxml_get_last_error()</strong>


id: libxml_disable_entity_loader
type: function
doc:
<comment>Description:</comment>
  Disable the ability to load external entities
  
  Disable/enable the ability to load external entities. Note that disabling the loading of external
  entities may cause general issues with loading XML documents. However, as of libxml 2.9.0 entity
  substitution is disabled by default, so there is no need to disable the loading of external
  entities.

<comment>Param:</comment>
  <info>bool</info>  <strong>$disable</strong>  Disable (<info>true</info>) or enable (<info>false</info>) libxml extensions (such as ,  and ) to load
                  external entities.

<comment>Return:</comment>
  <info>bool</info>  Returns the previous value.

<comment>See Also:</comment>
   * <strong>libxml_use_internal_errors()</strong>
   * The <info>LIBXML_NONET</info> constant


id: libxml_get_errors
type: function
doc:
<comment>Description:</comment>
  Retrieve array of errors
    
  
  Retrieve array of errors.

<comment>Return:</comment>
  <info>array</info>  Returns an array with <info>LibXMLError</info> objects if there are any errors in the buffer, or an
         empty array otherwise.

<comment>See Also:</comment>
   * <strong>libxml_get_last_error()</strong>
   * <strong>libxml_clear_errors()</strong>


id: libxml_get_last_error
type: function
doc:
<comment>Description:</comment>
  Retrieve last error from libxml
    
  
  Retrieve last error from libxml.

<comment>Return:</comment>
  <info>LibXMLErrorfalse</info>  Returns a <info>LibXMLError</info> object if there is any error in the buffer, <info>false</info>
                    otherwise.

<comment>See Also:</comment>
   * <strong>libxml_get_errors()</strong>
   * <strong>libxml_clear_errors()</strong>


id: libxml_set_external_entity_loader
type: function
doc:
<comment>Description:</comment>
  Changes the default external entity loader
  
  Changes the default external entity loader.

<comment>Param:</comment>
  <info>callablenull</info>  <strong>$resolver_function</strong>  A <info>callable</info> that takes three arguments. Two strings, a public id
                                    and system id, and a context (an array with four keys) as the
                                    third argument. This callback should return a resource, a string
                                    from which a resource can be opened, or <info>null</info>.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>libxml_disable_entity_loader()</strong>


id: libxml_set_streams_context
type: function
doc:
<comment>Description:</comment>
  Set the streams context for the next libxml document load or write
    
  
  Sets the streams context for the next libxml document load or write.

<comment>Param:</comment>
  <info>resource</info>  <strong>$context</strong>  The stream context resource (created with <strong>stream_context_create()</strong>)

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>stream_context_create()</strong>


id: libxml_use_internal_errors
type: function
doc:
<comment>Description:</comment>
  Disable libxml errors and allow user to fetch error information as needed
    
  
  <strong>libxml_use_internal_errors()</strong> allows you to disable standard libxml errors and enable user error
  handling.

<comment>Param:</comment>
  <info>boolnull</info>  <strong>$use_errors</strong>  Enable (<info>true</info>) user error handling or disable (<info>false</info>) user error handling.
                         Disabling will also clear any existing libxml errors.

<comment>Return:</comment>
  <info>bool</info>  This function returns the previous value of <strong>$use_errors</strong>.

<comment>See Also:</comment>
   * <strong>libxml_clear_errors()</strong>
   * <strong>libxml_get_errors()</strong>


id: list
type: function
doc:
<comment>Description:</comment>
  Assegna valori a delle variabili come se fossero un array
  
  Come <strong>array()</strong>, questa non è in realtà una funzione, bensì un costrutto del linguaggio.  <strong>list()</strong> è
  usata per assegnare valori ad una lista di variabili in una sola operazione.
  
  <strong>list()</strong> funziona solo su array numerici e si aspetta che gli indici numerici partano da 0.
  
  In PHP 5, <strong>list()</strong> assegna i valori partendo dal parametro più a destra. In PHP 7, <strong>list()</strong> comincia
  dal parametro più a sinistra.
  
  Se si stanno usando variabili semplici, non ci si deve preoccupare di questo comportamento. Ma se
  si stanno usando array con indici ci si aspetta che l'ordine degli indici nell'array sia lo stesso
  scritto nella funzione <strong>list()</strong> da sinitra a destra; non è il caso in PHP 5, dal momento che sono
  assegnati in ordine inverso.
  
  In generale, è sconsigliato fare affidamento su uno specifico ordine di operazioni, dal momento
  che questo può cambiare in futuro.
  
  La modifica dell'array durante l'esecuzione di <strong>list()</strong> (es. usando <return>list($a, $b) = $b</return> ha un
  comportamento indefinito.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var1</strong>  Una variabile.

<comment>Return:</comment>
  <info>array</info>  Restituisce l'array assegnato.

<comment>See Also:</comment>
   * <strong>each()</strong>
   * <strong>array()</strong>
   * <strong>extract()</strong>


id: log1p
type: function
doc:
<comment>Description:</comment>
  Restituisce log(1 + numero), computato in maniera tale da essere accurato anche se 
       il valore del numero è vicino a zero


id: log_cmd_delete
type: function
doc:
<comment>Description:</comment>
  Callback When Deleting Documents
  
  A <info>callable</info> function, used by the log_cmd_delete context option, when deleteing a document
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server         </strong>  An array containing the basic information about the server that was
                           picked. keyvaluehashserver hash, example:
                           <return>localhost:27017;-;X;56052</return>typeNode type
                           (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size
                           over the wire this node accepts: <return>16777216</return>max_message_sizeThe maximum
                           Message Size over the wire this node accepts: <return>48000000</return>request_idThe
                           request identifier for this message: <return>42</return>
  <info>array</info>  <strong>$writeOptions   </strong>  keyvalueorderedboolean, if the operation (in case of batch operation)
                           must be executed sequentually (ordered=true)writeConcernAn array of
                           writeConcern options (see below)writeConcern array
                           valueskeyvaluefsyncboolean, force flushing to disk before
                           returningjboolean, force journal write before returningwtimeoutinteger,
                           milliseconds, maximum time the primary is allowed to wait to verify
                           replicationwinteger=server count, or string=replication-tag
  <info>array</info>  <strong>$deleteOptions  </strong>  keyvaluelimitinteger, 1 or 0. If 0, delete all matching documents.qArray,
                           the search criteria
  <info>array</info>  <strong>$protocolOptions</strong>  keyvaluemessage_lengthThe total size (in bytes) of the encoded message
                           being sent over the wirerequest_idThe request identifier for this
                           message: <return>42</return>namespaceThe MongoDB namespace used for the protocol message
                           <return>dbname.collectionname</return>


id: log_cmd_insert
type: function
doc:
<comment>Description:</comment>
  Callback When Inserting Documents
  
  A <info>callable</info> function, used by the log_cmd_insert context option, when inserting a document
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server         </strong>  An array containing the basic information about the server that was
                           picked. keyvaluehashserver hash, example:
                           <return>localhost:27017;-;X;56052</return>typeNode type
                           (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size
                           over the wire this node accepts: <return>16777216</return>max_message_sizeThe maximum
                           Message Size over the wire this node accepts: <return>48000000</return>request_idThe
                           request identifier for this message: <return>42</return>
  <info>array</info>  <strong>$document       </strong>  The document that has been prepared to be inserted
  <info>array</info>  <strong>$writeOptions   </strong>  keyvalueorderedboolean, if the operation (in case of batch operation)
                           must be executed sequentually (ordered=true)writeConcernAn array of
                           writeConcern options (see below)writeConcern array
                           valueskeyvaluefsyncboolean, force flushing to disk before
                           returningjboolean, force journal write before returningwtimeoutinteger,
                           milliseconds, maximum time the primary is allowed to wait to verify
                           replicationwinteger=server count, or string=replication-tag
  <info>array</info>  <strong>$protocolOptions</strong>  keyvaluemessage_lengthThe total size (in bytes) of the encoded message
                           being sent over the wirerequest_idThe request identifier for this
                           message: <return>42</return>namespaceThe MongoDB namespace used for the protocol message
                           <return>dbname.collectionname</return>


id: log_cmd_update
type: function
doc:
<comment>Description:</comment>
  Callback When Updating Documents
  
  A <info>callable</info> function, used by the log_cmd_update context option, when updateing a document
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server         </strong>  An array containing the basic information about the server that was
                           picked. keyvaluehashserver hash, example:
                           <return>localhost:27017;-;X;56052</return>typeNode type
                           (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size
                           over the wire this node accepts: <return>16777216</return>max_message_sizeThe maximum
                           Message Size over the wire this node accepts: <return>48000000</return>request_idThe
                           request identifier for this message: <return>42</return>
  <info>array</info>  <strong>$writeOptions   </strong>  keyvalueorderedboolean, if the operation (in case of batch operation)
                           must be executed sequentually (ordered=true)writeConcernAn array of
                           writeConcern options (see below)writeConcern array
                           valueskeyvaluefsyncboolean, force flushing to disk before
                           returningjboolean, force journal write before returningwtimeoutinteger,
                           milliseconds, maximum time the primary is allowed to wait to verify
                           replicationwinteger=server count, or string=replication-tag
  <info>array</info>  <strong>$updateOptions  </strong>  keyvaluemultiBoolean, true if this update is allowed to update all
                           matched criteriaupsertBoolean, true if the document should be created if
                           criteria does not matchqArray, the search criteriauArray, the new
                           object/modifications
  <info>array</info>  <strong>$protocolOptions</strong>  keyvaluemessage_lengthThe total size (in bytes) of the encoded message
                           being sent over the wirerequest_idThe request identifier for this
                           message: <return>42</return>namespaceThe MongoDB namespace used for the protocol message
                           <return>dbname.collectionname</return>


id: log_getmore
type: function
doc:
<comment>Description:</comment>
  Callback When Retrieving Next Cursor Batch
  
  A <info>callable</info> function, used by the log_getmore context option, when executing a GET_MORE operation.
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server</strong>  An array containing the basic information about the server that was picked.
                  keyvaluehashserver hash, example: <return>localhost:27017;-;X;56052</return>typeNode type
                  (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size over the
                  wire this node accepts: <return>16777216</return>max_message_sizeThe maximum Message Size over the
                  wire this node accepts: <return>48000000</return>request_idThe request identifier for this message:
                  <return>42</return>
  <info>array</info>  <strong>$info  </strong>  keyvaluerequest_idinteger, the driver request identifiercursor_idinteger, the
                  cursor identifier being used to fetch more databatch_sizeinteger, maximum number
                  of documents being requested


id: log_killcursor
type: function
doc:
<comment>Description:</comment>
  Callback When Executing KILLCURSOR operations
  
  A <info>callable</info> function, used by the log_killcursor context option, when reading a killcursor from
  MongoDB.
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server</strong>  An array containing the basic information about the server that was picked.
                  keyvaluehashserver hash, example: <return>localhost:27017;-;X;56052</return>typeNode type
                  (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size over the
                  wire this node accepts: <return>16777216</return>max_message_sizeThe maximum Message Size over the
                  wire this node accepts: <return>48000000</return>request_idThe request identifier for this message:
                  <return>42</return>
  <info>array</info>  <strong>$info  </strong>  keyvaluecursor_idinteger, the cursor identifier to kill


id: log_reply
type: function
doc:
<comment>Description:</comment>
  Callback When Reading the MongoDB reply
  
  A <info>callable</info> function, used by the log_reply context option, when reading a reply from MongoDB.
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server          </strong>  An array containing the basic information about the server that was
                            picked. keyvaluehashserver hash, example:
                            <return>localhost:27017;-;X;56052</return>typeNode type
                            (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size
                            over the wire this node accepts: <return>16777216</return>max_message_sizeThe maximum
                            Message Size over the wire this node accepts: <return>48000000</return>request_idThe
                            request identifier for this message: <return>42</return>
  <info>array</info>  <strong>$messageHeaders  </strong>  keyvaluelengthinteger, bytes, message reply lengthrequest_idinteger, the
                            server request identifierresponse_idinteger, the driver request
                            identifier this message is a response ofopcodeinteger, the opcode id
  <info>array</info>  <strong>$operationHeaders</strong>  keyvalueflagsinteger, bitmask of protocol flagscursor_idinteger, ID of
                            the cursor created on the server (0 if none created, or its been
                            exhausted)startThe starting offset of this cursorreturnedinteger, how
                            many documents are returned in this trip

<comment>See Also:</comment>
   * The OP_REPLY definition in the Wire Protocol


id: log_write_batch
type: function
doc:
<comment>Description:</comment>
  Callback When Writing Batches
  
  A <info>callable</info> function, used by the log_write_batch context option, when executing a batch operation.
  
  This is not a real function, only a prototype of how the function should be.

<comment>Param:</comment>
  <info>array</info>  <strong>$server         </strong>  An array containing the basic information about the server that was
                           picked. keyvaluehashserver hash, example:
                           <return>localhost:27017;-;X;56052</return>typeNode type
                           (primary/secondary/mongos/arbiter): <return>2</return>max_bson_sizeThe maximum BSON Size
                           over the wire this node accepts: <return>16777216</return>max_message_sizeThe maximum
                           Message Size over the wire this node accepts: <return>48000000</return>request_idThe
                           request identifier for this message: <return>42</return>
  <info>array</info>  <strong>$writeOptions   </strong>  keyvalueorderedboolean, if the operation (in case of batch operation)
                           must be executed sequentually (ordered=true)writeConcernAn array of
                           writeConcern options (see below)writeConcern array
                           valueskeyvaluefsyncboolean, force flushing to disk before
                           returningjboolean, force journal write before returningwtimeoutinteger,
                           milliseconds, maximum time the primary is allowed to wait to verify
                           replicationwinteger=server count, or string=replication-tag
  <info>array</info>  <strong>$batch          </strong>  Array, the actual batch operation.
  <info>array</info>  <strong>$protocolOptions</strong>  keyvaluemessage_lengthThe total size (in bytes) of the encoded message
                           being sent over the wirerequest_idThe request identifier for this
                           message: <return>42</return>namespaceThe MongoDB namespace used for the protocol message
                           <return>dbname.collectionname</return>


id: long2ip
type: function
doc:
<comment>Description:</comment>
  Converte un indirizzo di rete del Protocollo Internet (IPv4) in una stringa contenente
        un indirizzo espresso secondo la notazione standard di Internet.


id: ltrim
type: function
doc:
<comment>Description:</comment>
  Rimuove gli spazi (o altri caratteri) dall'inizio di una stringa
  
  Rimuove gli spazi (o altri caratteri) dall'inizio di una stringa

<comment>Param:</comment>
  <info>string</info>  <strong>$str           </strong>  La stringa di input.
  <info>string</info>  <strong>$character_mask</strong>  Si possono anche specificare i caratteri che si vogliono eliminare,
                           mediante il parametro <strong>$character_mask</strong>. È sufficiente elencare tutti i
                           caratteri che vogliono essere eliminati. Con <return>..</return> si può specificare un
                           intervallo di caratteri.

<comment>Return:</comment>
  <info>string</info>  Questa funzione restituisce una stringa con gli spazi eliminati dall'inzio della <strong>$str</strong>.
          Senza il secondo parametro, <strong>ltrim()</strong> eliminerà questi caratteri:   " " (ASCII <return>32</return> (<return>0x20</return>)),
          uno spazio ordinario.  "\t" (ASCII <return>9</return> (<return>0x09</return>)), una tabulazione.  "\n" (ASCII <return>10</return> (<return>0x0A</return>)),
          una nuova linea (line feed).  "\r" (ASCII <return>13</return> (<return>0x0D</return>)), un ritorno a capo.  "\0" (ASCII <return>0</return>
          (<return>0x00</return>)), il byte <return>NUL</return>.  "\x0B" (ASCII <return>11</return> (<return>0x0B</return>)), una tab verticale.
          
          " " (ASCII <return>32</return> (<return>0x20</return>)), uno spazio ordinario.
          
          "\t" (ASCII <return>9</return> (<return>0x09</return>)), una tabulazione.
          
          "\n" (ASCII <return>10</return> (<return>0x0A</return>)), una nuova linea (line feed).
          
          "\r" (ASCII <return>13</return> (<return>0x0D</return>)), un ritorno a capo.
          
          "\0" (ASCII <return>0</return> (<return>0x00</return>)), il byte <return>NUL</return>.
          
           "\x0B" (ASCII <return>11</return> (<return>0x0B</return>)), una tab verticale.

<comment>See Also:</comment>
   * <strong>trim()</strong>
   * <strong>rtrim()</strong>


id: mail
type: function
doc:
<comment>Description:</comment>
  Invio mail
  
  Invia una email.

<comment>Param:</comment>
  <info>string</info>  <strong>$to                   </strong>  Destinatario, o destinatari della mail.
                                  
                                  La formattazione della stringa deve rispettare l' RFC 2822. Alcuni
                                  esempi sono: user@example.comuser@example.com,
                                  anotheruser@example.comUtente \<user@example.com&gt;Utente \<user@example.com&gt;, Un Altro utente \<anotheruser@example.com&gt;
  <info>string</info>  <strong>$subject              </strong>  L'oggetto dell'email da inviare.
                                  
                                  L'oggetto deve soddisfare l'RFC 2047.
  <info>string</info>  <strong>$message              </strong>  Il messaggio da inviare.
                                  
                                  Ogni riga dovrebbe essere separata con un CRLF (\r\n). Le righe
                                  non dovrebbero essere più lunghe di 70 caratteri.
                                  
                                  (Solo per Windows) Quando PHP comunica direttamente con un server
                                  SMTP, se viene trovato un punto all'inizio di una riga, esso viene
                                  rimosso. Per contrastare questo, sostituire queste occorrenze con
                                  un doppio punto.
                                  ]]>
  <info>mixed </info>  <strong>$additional_headers   </strong>  <info>String</info> o <info>array</info> da inserire alla fine dell'header dell'email.
                                  
                                  Questa è tipicamente usata per aggiungere degli header extra (Da,
                                  Cc, e Bcc). Gli header extra multipli dovrebbero essere separati
                                  con un CRLF (\r\n). Se vengono utilizzati dati esterni per
                                  comporre questo header, i dati dovrebbero essere sanitizzati in
                                  modo che nessun header non voluto possa essere iniettato.
                                  
                                  Se viene passato un <info>array</info>, le sue chiavi sono i nomi degli header
                                  ed i suoi valori sono i rispettivi valori degli header.
                                  
                                  Prima di PHP 5.4.42 e 5.5.27, rispettivamente, <strong>$additional_headers</strong>
                                  non aveva una protezione per l'injection dell'header della mail.
                                  Quindi, gli utenti devono assicurarsi che gli header specifici
                                  siano sicuri e che contengano solo header. p.e. Mai iniziare il
                                  corpo della mail mettendo righe vuote multiple.
                                  
                                  Quando si invia una mail, la mail deve contenere un header <return>From</return>.
                                  Questo può essere settato con il parametro <strong>$additional_headers</strong>, o
                                  può essere settato un valore di default in php.ini.
                                  
                                  Non riuscendo a fare questo si avrà un messaggio di errore simile
                                  a <return>Warning: mail(): "sendmail_from" not set in php.ini or custom
                                  "From:" header missing</return>. L'header <return>From</return> setta anche <return>Return-Path</return>
                                  sotto Windows.
                                  
                                  Se i messaggi non vengono ricevuti, provare ad utilizzare solo un
                                  LF (\n). Alcuni agent di trasferimento mail Unix (soprattutto
                                  qmail) sostituiscono LF con CRLF automaticamente (che porta a
                                  raddoppiare CR se viene utilizzato CRLF). Questa dovrebbe essere
                                  un'ultima spiaggia, in quanto non è conforme con l' RFC 2822.
  <info>string</info>  <strong>$additional_parameters</strong>  Il parametro <strong>$additional_parameters</strong> può essere usato per passare
                                  flag aggiuntive come opzioni della linea di comando al programma
                                  configurato per essere usato quando si inviano mail, come definito
                                  dall' impostazione di configurazione <return>sendmail_path</return>. Per esempio,
                                  questo può essere utilizzato per impostare l'indirizzo del
                                  mittente della mail quando si usa sendmail con l'opzione <return>-f</return> di
                                  sendmail.
                                  
                                  Su questo parametro è effettuato internamente l'escape da
                                  <strong>escapeshellcmd()</strong> per impedire l'esecuzione di comandi.
                                  <strong>escapeshellcmd()</strong> impedisce l'esecuzione del comando, ma permette
                                  di aggiungere parametri aggiuntivi. Per motivi di sicurezza, è
                                  raccomandato che l'utente sanitizzi questo parametro per evitare
                                  di aggiungere parametri non voluti sulla shell di comando.
                                  
                                  Dato che <strong>escapeshellcmd()</strong> viene applicato automaticamente, alcuni
                                  caratteri che sono permessi come indirizzo email dall'internet di
                                  RFC non possono essere utilizzati.  <strong>mail()</strong> non può permettere tali
                                  caratteri, così in programmi dove l'uso di tali caratteri è
                                  richiesto, sono raccomandati mezzi alternativi di invio delle
                                  email (come l'utilizzo di un framework o di una libreria).
                                  
                                  L'utente con il quale il webserver viene eseguito dovrebbe essere
                                  aggiunto come utente fidato alla configurazione sendmail per
                                  prevenire l'aggiunta di un header 'X-Warning' al messaggio quando
                                  il mittente del messaggio (-f) viene impostato usando questo
                                  metodo. Per gli utenti sendmail, questo file è
                                  /etc/mail/trusted-users.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se la mail è stata acccettata con successo per la consegna, <info>false</info> in caso
        contrario.
        
        È importante notare che solo perchè la mail è stata accettata per la consegna, questo NON
        significa che la mail raggiungerà effettivamente la destinazione prevista.

<comment>See Also:</comment>
   * <strong>mb_send_mail()</strong>
   * <strong>imap_mail()</strong>
   * PEAR::Mail
   * PEAR::Mail_Mime


id: mailparse_determine_best_xfer_encoding
type: function
doc:
<comment>Description:</comment>
  Gets the best way of encoding
  
  Figures out the best way of encoding the content read from the given file pointer.

<comment>Param:</comment>
  <info>resource</info>  <strong>$fp</strong>  A valid file pointer, which must be seek-able.

<comment>Return:</comment>
  <info>string</info>  Returns one of the character encodings supported by the mbstring module.


id: mailparse_msg_create
type: function
doc:
<comment>Description:</comment>
  Create a mime mail resource
  
  Create a <return>MIME</return> mail resource.

<comment>Return:</comment>
  <info>resource</info>  Returns a handle that can be used to parse a message.

<comment>See Also:</comment>
   * <strong>mailparse_msg_free()</strong>
   * <strong>mailparse_msg_parse_file()</strong>


id: mailparse_msg_extract_part
type: function
doc:
<comment>Description:</comment>
  Extracts/decodes a message section
    
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail    </strong>  A valid <return>MIME</return> resource.
  <info>string  </info>  <strong>$msgbody     </strong>  
  <info>callable</info>  <strong>$callbackfunc</strong>  

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mailparse_msg_extract_part_file()</strong>
   * <strong>mailparse_msg_extract_whole_part_file()</strong>


id: mailparse_msg_extract_part_file
type: function
doc:
<comment>Description:</comment>
  Extracts/decodes a message section
  
  Extracts/decodes a message section from the supplied filename.
  
  The contents of the section will be decoded according to their transfer encoding - base64,
  quoted-printable and uuencoded text are supported.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail    </strong>  A valid <return>MIME</return> resource, created with <strong>mailparse_msg_create()</strong>.
  <info>mixed   </info>  <strong>$filename    </strong>  Can be a file name or a valid stream resource.
  <info>callable</info>  <strong>$callbackfunc</strong>  If set, this must be either a valid callback that will be passed the
                           extracted section, or <info>null</info> to make this function return the extracted
                           section.
                           
                           If not specified, the contents will be sent to "stdout".

<comment>Return:</comment>
  <info>string</info>  If <strong>$callbackfunc</strong> is not <info>null</info> returns <info>true</info> on success.
          
          If <strong>$callbackfunc</strong> is set to <info>null</info>, returns the extracted section as a string.
          
          Returns <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>mailparse_msg_extract_part()</strong>
   * <strong>mailparse_msg_extract_whole_part_file()</strong>


id: mailparse_msg_extract_whole_part_file
type: function
doc:
<comment>Description:</comment>
  Extracts a message section including headers without decoding the transfer encoding
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail    </strong>  A valid <return>MIME</return> resource.
  <info>string  </info>  <strong>$filename    </strong>  
  <info>callable</info>  <strong>$callbackfunc</strong>  

<comment>Return:</comment>
  <info>string</info>  

<comment>See Also:</comment>
   * <strong>mailparse_msg_extract_part()</strong>
   * <strong>mailparse_msg_extract_part_file()</strong>


id: mailparse_msg_free
type: function
doc:
<comment>Description:</comment>
  Frees a MIME resource
  
  Frees a <return>MIME</return> resource.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail</strong>  A valid <return>MIME</return> resource allocated by <strong>mailparse_msg_create()</strong> or
                       <strong>mailparse_msg_parse_file()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mailparse_msg_create()</strong>
   * <strong>mailparse_msg_parse_file()</strong>


id: mailparse_msg_get_part
type: function
doc:
<comment>Description:</comment>
  Returns a handle on a given section in a mimemessage
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail   </strong>  A valid <return>MIME</return> resource.
  <info>string  </info>  <strong>$mimesection</strong>  

<comment>Return:</comment>
  <info>resource</info>  


id: mailparse_msg_get_part_data
type: function
doc:
<comment>Description:</comment>
  Returns an associative array of info about the message
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail</strong>  A valid <return>MIME</return> resource.

<comment>Return:</comment>
  <info>array</info>  


id: mailparse_msg_get_structure
type: function
doc:
<comment>Description:</comment>
  Returns an array of mime section names in the supplied message
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail</strong>  A valid <return>MIME</return> resource.

<comment>Return:</comment>
  <info>array</info>  


id: mailparse_msg_parse
type: function
doc:
<comment>Description:</comment>
  Incrementally parse data into buffer
  
  Incrementally parse data into the supplied mime mail resource.
  
  This function allow you to stream portions of a file at a time, rather than read and parse the
  whole thing.

<comment>Param:</comment>
  <info>resource</info>  <strong>$mimemail</strong>  A valid <return>MIME</return> resource.
  <info>string  </info>  <strong>$data    </strong>  The final chunk of <strong>$data</strong> is supposed to end with a newline (<return>CRLF</return>); otherwise
                       the last line of the message will not be parsed.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: mailparse_msg_parse_file
type: function
doc:
<comment>Description:</comment>
  Parses a file
  
  Parses a file. This is the optimal way of parsing a mail file that you have on disk.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Path to the file holding the message. The file is opened and streamed through
                     the parser.
                     
                     The message contained in <strong>$filename</strong> is supposed to end with a newline (<return>CRLF</return>);
                     otherwise the last line of the message will not be parsed.

<comment>Return:</comment>
  <info>resource</info>  Returns a <return>MIME</return> resource representing the structure, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>mailparse_msg_free()</strong>
   * <strong>mailparse_msg_create()</strong>


id: mailparse_rfc822_parse_addresses
type: function
doc:
<comment>Description:</comment>
  Parse RFC 822 compliant addresses
  
  Parses a RFC 822 compliant recipient list, such as that found in the <return>To:</return> header.

<comment>Param:</comment>
  <info>string</info>  <strong>$addresses</strong>  A string containing addresses, like in: <return>Wez Furlong \<wez@example.com&gt;, doe@example.com</return>
                      
                      This string must not include the header name.

<comment>Return:</comment>
  <info>array</info>  Returns an array of associative arrays with the following keys for each recipient: <return>display</return>
         The recipient name, for display purpose. If this part is not set for a recipient, this key
         will hold the same value as  <return>address</return>. <return>address</return>The email address<return>is_group</return><info>true</info> if the recipient
         is a newsgroup, <info>false</info> otherwise.


id: mailparse_stream_encode
type: function
doc:
<comment>Description:</comment>
  Streams data from source file pointer, apply encoding and write to destfp 
    
  
  Streams data from the source file pointer, apply  <strong>$encoding</strong> and write to the destination file
  pointer.

<comment>Param:</comment>
  <info>resource</info>  <strong>$sourcefp</strong>  A valid file handle. The file is streamed through the parser.
  <info>resource</info>  <strong>$destfp  </strong>  The destination file handle in which the encoded data will be written.
  <info>string  </info>  <strong>$encoding</strong>  One of the character encodings supported by the mbstring module.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: mailparse_uudecode_all
type: function
doc:
<comment>Description:</comment>
  Scans the data from fp and extract each embedded uuencoded file
    
  
  Scans the data from the given file pointer and extract each embedded uuencoded file into a
  temporary file.

<comment>Param:</comment>
  <info>resource</info>  <strong>$fp</strong>  A valid file pointer.

<comment>Return:</comment>
  <info>array</info>  Returns an array of associative arrays listing filename information. <return>filename</return>Path to the
         temporary file name created<return>origfilename</return>The original filename, for uuencoded parts only The
         first filename entry is the message body. The next entries are the decoded uuencoded files.


id: mb_check_encoding
type: function
doc:
<comment>Description:</comment>
  Check if strings are valid for the specified encoding
  
  Checks if the specified byte stream is valid for the specified encoding. If <strong>$value</strong> is of type
  <info>array</info>, all keys and values are validated recursively. It is useful to prevent so-called "Invalid
  Encoding Attack".

<comment>Param:</comment>
  <info>arraystringnull</info>  <strong>$value   </strong>  The byte stream or <info>array</info> to check. If it is omitted, this function
                              checks all the input from the beginning of the request.
  <info>stringnull     </info>  <strong>$encoding</strong>  The expected encoding.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: mb_chr
type: function
doc:
<comment>Description:</comment>
  Get a specific character
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>int       </info>  <strong>$codepoint</strong>  
  <info>stringnull</info>  <strong>$encoding </strong>  

<comment>Return:</comment>
  <info>stringfalse</info>  Returns a specific character o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_ord()</strong>
   * <strong>chr()</strong>


id: mb_convert_case
type: function
doc:
<comment>Description:</comment>
  Perform case folding on a string
  
  Performs case folding on a <info>string</info>, converted in the way specified by <strong>$mode</strong>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being converted.
  <info>int       </info>  <strong>$mode    </strong>  The mode of the conversion. It can be one of  <info>MB_CASE_UPPER</info>,
                         <info>MB_CASE_LOWER</info>,  <info>MB_CASE_TITLE</info>, <info>MB_CASE_FOLD</info>, <info>MB_CASE_UPPER_SIMPLE</info>,
                         <info>MB_CASE_LOWER_SIMPLE</info>, <info>MB_CASE_TITLE_SIMPLE</info>, <info>MB_CASE_FOLD_SIMPLE</info>.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>string</info>  A case folded version of <strong>$string</strong> converted in the way specified by <strong>$mode</strong>.

<comment>See Also:</comment>
   * <strong>mb_strtolower()</strong>
   * <strong>mb_strtoupper()</strong>
   * <strong>strtolower()</strong>
   * <strong>strtoupper()</strong>
   * <strong>ucfirst()</strong>
   * <strong>ucwords()</strong>


id: mb_convert_encoding
type: function
doc:
<comment>Description:</comment>
  Convert character encoding
  
  Converts the character encoding of <strong>$string</strong> to <strong>$to_encoding</strong> from optionally <strong>$from_encoding</strong>. If
  <strong>$string</strong> is an <info>array</info>, all its <info>string</info> values will be converted recursively.

<comment>Param:</comment>
  <info>arraystring    </info>  <strong>$string       </strong>  The <info>string</info> or <info>array</info> being encoded.
  <info>string         </info>  <strong>$to_encoding  </strong>  The type of encoding that <strong>$string</strong> is being converted to.
  <info>arraystringnull</info>  <strong>$from_encoding</strong>  Is specified by character code names before conversion. It is
                                   either an <info>array</info>, or a comma separated enumerated list. If
                                   <strong>$from_encoding</strong> is not specified, the internal  encoding will be
                                   used.
                                   
                                   See supported encodings.

<comment>Return:</comment>
  <info>arraystringfalse</info>  The encoded <info>string</info> or <info>array</info> on success,  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_detect_order()</strong>


id: mb_convert_kana
type: function
doc:
<comment>Description:</comment>
  Convert "kana" one from another ("zen-kaku", "han-kaku" and more)
  
  Performs a "han-kaku" - "zen-kaku" conversion for <info>string</info> <strong>$string</strong>.  This function is only useful
  for Japanese.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being converted.
  <info>string    </info>  <strong>$mode    </strong>  The conversion option.
                         
                         Specify with a combination of following options. Applicable Conversion
                         OptionsOptionMeaning<return>r</return> Convert "zen-kaku" alphabets to "han-kaku" <return>R</return> Convert
                         "han-kaku" alphabets to "zen-kaku" <return>n</return> Convert "zen-kaku" numbers to
                         "han-kaku" <return>N</return> Convert "han-kaku" numbers to "zen-kaku" <return>a</return> Convert "zen-kaku"
                         alphabets and numbers to "han-kaku" <return>A</return> Convert "han-kaku" alphabets and
                         numbers to "zen-kaku" (Characters included in "a", "A" options are U+0021 -
                         U+007E excluding U+0022, U+0027, U+005C, U+007E) <return>s</return> Convert "zen-kaku" space
                         to "han-kaku" (U+3000 -&gt; U+0020) <return>S</return> Convert "han-kaku" space to
                         "zen-kaku" (U+0020 -&gt; U+3000) <return>k</return> Convert "zen-kaku kata-kana" to
                         "han-kaku kata-kana" <return>K</return> Convert "han-kaku kata-kana" to "zen-kaku kata-kana"
                         <return>h</return> Convert "zen-kaku hira-gana" to "han-kaku kata-kana" <return>H</return> Convert "han-kaku
                         kata-kana" to "zen-kaku hira-gana" <return>c</return> Convert "zen-kaku kata-kana" to
                         "zen-kaku hira-gana" <return>C</return> Convert "zen-kaku hira-gana" to "zen-kaku kata-kana"
                         <return>V</return> Collapse voiced sound notation and convert them into a character. Use
                         with "K","H"
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>string</info>  The converted <info>string</info>.


id: mb_convert_variables
type: function
doc:
<comment>Description:</comment>
  Convert character code in variable(s)
  
  Converts  character encoding of variables <strong>$var</strong> and <strong>$vars</strong> in encoding <strong>$from_encoding</strong> to encoding
  <strong>$to_encoding</strong>.
  
  <strong>mb_convert_variables()</strong> join strings in Array or Object to detect encoding, since encoding
  detection tends to fail for short strings. Therefore, it is impossible to mix encoding in single
  array or object.

<comment>Param:</comment>
  <info>string     </info>  <strong>$to_encoding  </strong>  The encoding that the <info>string</info> is being converted to.
  <info>arraystring</info>  <strong>$from_encoding</strong>  <strong>$from_encoding</strong> is specified as an <info>array</info>  or comma separated <info>string</info>,
                               it tries to detect encoding from <strong>$from-coding</strong>. When <strong>$from_encoding</strong>
                               is omitted, <return>detect_order</return> is used.
  <info>mixed      </info>  <strong>$var          </strong>  <strong>$var</strong> is the reference to the variable being converted. String, Array
                               and Object are accepted. <strong>mb_convert_variables()</strong> assumes all
                               parameters have the same encoding.
  <info>mixed      </info>  <strong>$vars         </strong>  Additional <strong>$var</strong>s.

<comment>Return:</comment>
  <info>stringfalse</info>  The character encoding before conversion for success,  or <info>false</info> for failure.


id: mb_decode_mimeheader
type: function
doc:
<comment>Description:</comment>
  Decode string in MIME header field
  
  Decodes encoded-word <info>string</info> <strong>$string</strong> in MIME header.

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

<comment>Return:</comment>
  <info>string</info>  The decoded <info>string</info> in internal character encoding.

<comment>See Also:</comment>
   * <strong>mb_encode_mimeheader()</strong>


id: mb_decode_numericentity
type: function
doc:
<comment>Description:</comment>
  Decode HTML numeric string reference to character
  
  Convert numeric string reference of <info>string</info> <strong>$string</strong> in a specified block to character.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being decoded.
  <info>array     </info>  <strong>$map     </strong>  <strong>$map</strong> is an <info>array</info> that specifies  the code area to convert.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.
  <info>          </info>  <strong>$is_hex  </strong>  This parameter is not used.

<comment>Return:</comment>
  <info>string</info>  The converted <info>string</info>.

<comment>See Also:</comment>
   * <strong>mb_encode_numericentity()</strong>


id: mb_detect_encoding
type: function
doc:
<comment>Description:</comment>
  Detect character encoding
  
  Detects character encoding in <info>string</info> <strong>$string</strong>.

<comment>Param:</comment>
  <info>string         </info>  <strong>$string   </strong>  The <info>string</info> being detected.
  <info>arraystringnull</info>  <strong>$encodings</strong>  <strong>$encodings</strong> is list of character encoding. Encoding order may be
                               specified by array or comma separated list string.
                               
                               If <strong>$encodings</strong> is omitted or <info>null</info>, detect_order is used.
  <info>bool           </info>  <strong>$strict   </strong>  <strong>$strict</strong> specifies whether to use the strict encoding detection or
                               not. Default is <info>false</info>.

<comment>Return:</comment>
  <info>stringfalse</info>  The detected character encoding or <info>false</info> if the encoding cannot be detected from the
               given string.

<comment>See Also:</comment>
   * <strong>mb_detect_order()</strong>


id: mb_detect_order
type: function
doc:
<comment>Description:</comment>
  Set/Get character encoding detection order
  
  Sets the automatic character encoding detection order to <strong>$encoding</strong>.

<comment>Param:</comment>
  <info>arraystringnull</info>  <strong>$encoding</strong>  <strong>$encoding</strong> is an <info>array</info> or  comma separated list of character encoding.
                              See supported encodings.
                              
                              If <strong>$encoding</strong> is omitted or <info>null</info>, it returns the current character
                              encoding detection order as array.
                              
                              This setting affects <strong>mb_detect_encoding()</strong> and <strong>mb_send_mail()</strong>.
                              
                              <return>mbstring</return> currently implements the following encoding detection
                              filters. If there is an invalid byte sequence for the following
                              encodings, encoding detection will fail.
                              
                              <return>UTF-8</return>, <return>UTF-7</return>, <return>ASCII</return>, <return>EUC-JP</return>,<return>SJIS</return>, <return>eucJP-win</return>, <return>SJIS-win</return>, <return>JIS</return>,
                              <return>ISO-2022-JP</return>
                              
                              For <return>ISO-8859-*</return>, <return>mbstring</return> always detects as <return>ISO-8859-*</return>.
                              
                              For <return>UTF-16</return>, <return>UTF-32</return>, <return>UCS2</return> and <return>UCS4</return>, encoding detection will fail
                              always.

<comment>Return:</comment>
  <info>arraybool</info>  When setting the encoding detection order, <info>true</info> is returned on success or <info>false</info> on
             failure.
             
             When getting the encoding detection order, an ordered array of the encodings is
             returned.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>mb_http_input()</strong>
   * <strong>mb_http_output()</strong>
   * <strong>mb_send_mail()</strong>


id: mb_encode_mimeheader
type: function
doc:
<comment>Description:</comment>
  Encode string for MIME header
  
  Encodes a given <info>string</info> <strong>$string</strong> by the MIME header encoding scheme.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string           </strong>  The <info>string</info> being encoded. Its encoding should be same as
                                  <strong>mb_internal_encoding()</strong>.
  <info>stringnull</info>  <strong>$charset          </strong>  <strong>$charset</strong> specifies the name of the character set in which <strong>$string</strong>
                                  is represented in. The default value is determined by the current
                                  NLS setting (<return>mbstring.language</return>).
  <info>stringnull</info>  <strong>$transfer_encoding</strong>  <strong>$transfer_encoding</strong> specifies the scheme of MIME encoding. It
                                  should be either <return>"B"</return> (Base64) or <return>"Q"</return> (Quoted-Printable). Falls
                                  back to <return>"B"</return> if not given.
  <info>string    </info>  <strong>$newline          </strong>  <strong>$newline</strong> specifies the EOL (end-of-line) marker with which
                                  <strong>mb_encode_mimeheader()</strong> performs line-folding (a RFC term, the act
                                  of breaking a line longer than a certain length into multiple
                                  lines. The length is currently hard-coded to 74 characters). Falls
                                  back to <return>"\r\n"</return> (CRLF) if not given.
  <info>int       </info>  <strong>$indent           </strong>  Indentation of the first line (number of characters in the header
                                  before <strong>$string</strong>).

<comment>Return:</comment>
  <info>string</info>  A converted version of the <info>string</info> represented in ASCII.

<comment>See Also:</comment>
   * <strong>mb_decode_mimeheader()</strong>


id: mb_encode_numericentity
type: function
doc:
<comment>Description:</comment>
  Encode character to HTML numeric string reference
  
  Converts specified character codes in <info>string</info> <strong>$string</strong> from character code to HTML numeric character
  reference.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being encoded.
  <info>array     </info>  <strong>$map     </strong>  <strong>$map</strong> is array specifies code area to convert.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.
  <info>bool      </info>  <strong>$hex     </strong>  Whether the returned entity reference should be in hexadecimal notation
                         (otherwise it is in decimal notation).

<comment>Return:</comment>
  <info>string</info>  The converted <info>string</info>.

<comment>See Also:</comment>
   * <strong>mb_decode_numericentity()</strong>


id: mb_encoding_aliases
type: function
doc:
<comment>Description:</comment>
  Get aliases of a known encoding type
  
  Returns an array of aliases for a known <strong>$encoding</strong> type.

<comment>Param:</comment>
  <info>string</info>  <strong>$encoding</strong>  The encoding type being checked, for aliases.

<comment>Return:</comment>
  <info>array</info>  Returns a numerically indexed array of encoding aliases on success, o <info>false</info> in caso di
         fallimento

<comment>See Also:</comment>
   * <strong>mb_list_encodings()</strong>


id: mb_ereg
type: function
doc:
<comment>Description:</comment>
  Regular expression match with multibyte support
  
  Executes the regular expression match with multibyte support.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  The search pattern.
  <info>string</info>  <strong>$string </strong>  The search <info>string</info>.
  <info>array </info>  <strong>$matches</strong>  If matches are found for parenthesized substrings of <strong>$pattern</strong> and the function
                    is called with the third argument <strong>$matches</strong>, the matches will be stored in the
                    elements of the array <strong>$matches</strong>. If no matches are found, <strong>$matches</strong> is set to an
                    empty array.
                    
                    $matches[1] will contain the substring which starts at the first left
                    parenthesis; $matches[2] will contain the substring starting at the second, and
                    so on. $matches[0] will contain a copy of the complete string matched.

<comment>Return:</comment>
  <info>bool</info>  Returns whether <strong>$pattern</strong> matches <strong>$string</strong>.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_eregi()</strong>


id: mb_ereg_match
type: function
doc:
<comment>Description:</comment>
  Regular expression match for multibyte string
  
  A regular expression match for a multibyte string

<comment>Param:</comment>
  <info>string    </info>  <strong>$pattern</strong>  The regular expression pattern.
  <info>string    </info>  <strong>$string </strong>  The <info>string</info> being evaluated.
  <info>stringnull</info>  <strong>$options</strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if <strong>$string</strong> matches the regular expression <strong>$pattern</strong>, <info>false</info> if not.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg()</strong>


id: mb_ereg_replace
type: function
doc:
<comment>Description:</comment>
  Replace regular expression with multibyte support
  
  Scans <strong>$string</strong> for matches to <strong>$pattern</strong>, then replaces the matched text with <strong>$replacement</strong>

<comment>Param:</comment>
  <info>string    </info>  <strong>$pattern    </strong>  The regular expression pattern.
                            
                            Multibyte characters may be used in <strong>$pattern</strong>.
  <info>string    </info>  <strong>$replacement</strong>  The replacement text.
  <info>string    </info>  <strong>$string     </strong>  The <info>string</info> being checked.
  <info>stringnull</info>  <strong>$options    </strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>stringfalsenull</info>  The resultant <info>string</info> on success, or <info>false</info> on error. If <strong>$string</strong> is not valid for
                   the current encoding, <info>null</info> is returned.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_eregi_replace()</strong>


id: mb_ereg_replace_callback
type: function
doc:
<comment>Description:</comment>
  Perform a regular expression search and replace with multibyte support using a callback
    
  
  Scans <strong>$string</strong> for matches to <strong>$pattern</strong>, then replaces the matched text with the output of <strong>$callback</strong>
  function.
  
  The behavior of this function is almost identical to <strong>mb_ereg_replace()</strong>,  except for the fact that
  instead of <strong>$replacement</strong> parameter, one should specify a <strong>$callback</strong>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$pattern </strong>  The regular expression pattern.
                         
                         Multibyte characters may be used in <strong>$pattern</strong>.
  <info>callable  </info>  <strong>$callback</strong>  A callback that will be called and passed an array of matched elements in
                         the  <strong>$subject</strong> string. The callback should return the replacement string.
                         
                         You'll often need the <strong>$callback</strong> function for a <strong>mb_ereg_replace_callback()</strong>
                         in just one place. In this case you can use an anonymous function to
                         declare the callback within the call to <strong>mb_ereg_replace_callback()</strong>. By
                         doing it this way you have all information for the call in one place and do
                         not clutter the function namespace with a callback function's name not used
                         anywhere else.
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being checked.
  <info>stringnull</info>  <strong>$options </strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>stringfalsenull</info>  The resultant <info>string</info> on success, or <info>false</info> on error. If <strong>$string</strong> is not valid for
                   the current encoding, <info>null</info> is returned.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_replace()</strong>
   * Anonymous functions


id: mb_ereg_search
type: function
doc:
<comment>Description:</comment>
  Multibyte regular expression match for predefined multibyte string
  
  Performs a multibyte regular expression match for a predefined multibyte string.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$pattern</strong>  The search pattern.
  <info>stringnull</info>  <strong>$options</strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>bool</info>  <strong>mb_ereg_search()</strong> returns <info>true</info> if the multibyte string matches with the regular expression,
        or <info>false</info> otherwise. The <info>string</info> for matching is set by  <strong>mb_ereg_search_init()</strong>. If <strong>$pattern</strong> is
        not specified, the previous one is used.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_init()</strong>


id: mb_ereg_search_getpos
type: function
doc:
<comment>Description:</comment>
  Returns start point for next regular expression match
  
  Returns the start point for the next regular expression match.

<comment>Return:</comment>
  <info>int</info>  <strong>mb_ereg_search_getpos()</strong> returns the point to start regular expression match for
       <strong>mb_ereg_search()</strong>, <strong>mb_ereg_search_pos()</strong>, <strong>mb_ereg_search_regs()</strong>. The position is represented by
       bytes from the head of string.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_setpos()</strong>


id: mb_ereg_search_getregs
type: function
doc:
<comment>Description:</comment>
  Retrieve the result from the last multibyte regular expression match
  
  Retrieve the result from the last multibyte regular expression match

<comment>Return:</comment>
  <info>arrayfalse</info>  An <info>array</info> including the sub-string of matched part by last <strong>mb_ereg_search()</strong>,
              <strong>mb_ereg_search_pos()</strong>, <strong>mb_ereg_search_regs()</strong>. If there are some matches, the first
              element will have the matched sub-string, the second element will have the first part
              grouped with brackets,  the third element will have the second part grouped with
              brackets, and so on. It returns <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_init()</strong>


id: mb_ereg_search_init
type: function
doc:
<comment>Description:</comment>
  Setup string and regular expression for a multibyte regular expression match
  
  <strong>mb_ereg_search_init()</strong> sets <strong>$string</strong> and <strong>$pattern</strong> for a multibyte regular expression. These values
  are used for <strong>mb_ereg_search()</strong>, <strong>mb_ereg_search_pos()</strong>, and <strong>mb_ereg_search_regs()</strong>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string </strong>  The search string.
  <info>stringnull</info>  <strong>$pattern</strong>  The search pattern.
  <info>stringnull</info>  <strong>$options</strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_regs()</strong>


id: mb_ereg_search_pos
type: function
doc:
<comment>Description:</comment>
  Returns position and length of a matched part of the multibyte regular expression for a predefined
  multibyte string
  
  Returns position and length of a matched part of the multibyte regular expression  for a
  predefined multibyte string
  
  The string for match is specified by <strong>mb_ereg_search_init()</strong>. If it is not specified, the previous
  one will be used.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$pattern</strong>  The search pattern.
  <info>stringnull</info>  <strong>$options</strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>arrayfalse</info>  An <info>array</info> containing two elements. The first element is the offset, in bytes, where the
              match begins relative to the start of the search string, and the second element is the
              length in bytes of the match.
              
              If an error occurs, <info>false</info> is returned.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_init()</strong>


id: mb_ereg_search_regs
type: function
doc:
<comment>Description:</comment>
  Returns the matched part of a multibyte regular expression
  
  Returns the matched part of a multibyte regular expression.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$pattern</strong>  The search pattern.
  <info>stringnull</info>  <strong>$options</strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>arrayfalse</info>  <strong>mb_ereg_search_regs()</strong> executes the multibyte regular expression match, and if there
              are some matched part, it returns an <info>array</info> including substring of matched part as
              first element, the first grouped part with brackets as second element, the second
              grouped part as third element, and so on.  It returns <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_init()</strong>


id: mb_ereg_search_setpos
type: function
doc:
<comment>Description:</comment>
  Set start point of next regular expression match
  
  <strong>mb_ereg_search_setpos()</strong> sets the starting point of a match for <strong>mb_ereg_search()</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$offset</strong>  The position to set. If it is negative, it counts from the end of the string.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_search_init()</strong>


id: mb_eregi
type: function
doc:
<comment>Description:</comment>
  Regular expression match ignoring case with multibyte support
  
  Executes the case insensitive regular expression match with multibyte support.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  The regular expression pattern.
  <info>string</info>  <strong>$string </strong>  The <info>string</info> being searched.
  <info>array </info>  <strong>$matches</strong>  If matches are found for parenthesized substrings of <strong>$pattern</strong> and the function
                    is called with the third argument <strong>$matches</strong>, the matches will be stored in the
                    elements of the array <strong>$matches</strong>. If no matches are found, <strong>$matches</strong> is set to an
                    empty array.
                    
                    $matches[1] will contain the substring which starts at the first left
                    parenthesis; $matches[2] will contain the substring starting at the second, and
                    so on. $matches[0] will contain a copy of the complete string matched.

<comment>Return:</comment>
  <info>bool</info>  Returns whether <strong>$pattern</strong> matches <strong>$string</strong>.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg()</strong>


id: mb_eregi_replace
type: function
doc:
<comment>Description:</comment>
  Replace regular expression with multibyte support ignoring case
  
  Scans <strong>$string</strong> for matches to <strong>$pattern</strong>, then replaces the matched text with <strong>$replacement</strong>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$pattern    </strong>  The regular expression pattern.  Multibyte characters may be used. The
                            case will be ignored.
  <info>string    </info>  <strong>$replacement</strong>  The replacement text.
  <info>string    </info>  <strong>$string     </strong>  The searched <info>string</info>.
  <info>stringnull</info>  <strong>$options    </strong>  The search option. See <strong>mb_regex_set_options()</strong> for explanation.

<comment>Return:</comment>
  <info>stringfalsenull</info>  The resultant <info>string</info> or <info>false</info> on error.  If <strong>$string</strong> is not valid for the current
                   encoding, <info>null</info> is returned.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg_replace()</strong>


id: mb_get_info
type: function
doc:
<comment>Description:</comment>
  Get internal settings of mbstring
  
  <strong>mb_get_info()</strong> returns the internal setting parameters of mbstring.

<comment>Param:</comment>
  <info>string</info>  <strong>$type</strong>  If <strong>$type</strong> isn't specified or is specified to "all", an <info>array</info> having the elements
                 "internal_encoding", "http_output", "http_input", "func_overload", "mail_charset",
                 "mail_header_encoding", "mail_body_encoding" will be returned.
                 
                 If <strong>$type</strong> is specified as "http_output", "http_input", "internal_encoding",
                 "func_overload", the specified setting parameter will be returned.

<comment>Return:</comment>
  <info>arraystringintfalse</info>  An <info>array</info> of type information if <strong>$type</strong>  is not specified, otherwise a specific
                       <strong>$type</strong>, o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_http_output()</strong>


id: mb_http_input
type: function
doc:
<comment>Description:</comment>
  Detect HTTP input character encoding
  
  Detects the HTTP input character encoding.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$type</strong>  Input string specifies the input type.  <return>"G"</return> for GET, <return>"P"</return> for POST, <return>"C"</return> for
                     COOKIE, <return>"S"</return> for string, <return>"L"</return> for list, and <return>"I"</return> for the whole list (will return
                     <info>array</info>).  If type is omitted, it returns the last input type processed.

<comment>Return:</comment>
  <info>arraystringfalse</info>  The character encoding name, as per the <strong>$type</strong>, or an array of character encoding
                    names, if <strong>$type</strong> is <return>"I"</return>. If <strong>mb_http_input()</strong> does not process specified HTTP
                    input, it returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>mb_http_output()</strong>
   * <strong>mb_detect_order()</strong>


id: mb_http_output
type: function
doc:
<comment>Description:</comment>
  Set/Get HTTP output character encoding
  
  Set/Get the HTTP output character encoding. Output after this function is called will be converted
  from the set internal encoding to <strong>$encoding</strong>.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$encoding</strong>  If <strong>$encoding</strong> is set, <strong>mb_http_output()</strong> sets the HTTP output character
                         encoding to <strong>$encoding</strong>.
                         
                         If <strong>$encoding</strong> is omitted, <strong>mb_http_output()</strong> returns the current HTTP output
                         character encoding.

<comment>Return:</comment>
  <info>stringbool</info>  If <strong>$encoding</strong> is omitted, <strong>mb_http_output()</strong> returns the current HTTP output character
              encoding. Otherwise,  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di
              fallimento.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>mb_http_input()</strong>
   * <strong>mb_detect_order()</strong>


id: mb_internal_encoding
type: function
doc:
<comment>Description:</comment>
  Set/Get internal character encoding
  
  Set/Get the internal character encoding

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$encoding</strong>  <strong>$encoding</strong> is the character encoding name  used for the HTTP input character
                         encoding conversion, HTTP output  character encoding conversion, and the
                         default character encoding  for string functions defined by the mbstring
                         module. You should notice that the internal encoding is totally different
                         from the one for multibyte regex.

<comment>Return:</comment>
  <info>stringbool</info>  If <strong>$encoding</strong> is set, then  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di
              fallimento. In this case, the character encoding for multibyte regex is NOT changed.
              If <strong>$encoding</strong> is omitted, then  the current character encoding name is returned.

<comment>See Also:</comment>
   * <strong>mb_http_input()</strong>
   * <strong>mb_http_output()</strong>
   * <strong>mb_detect_order()</strong>
   * <strong>mb_regex_encoding()</strong>


id: mb_language
type: function
doc:
<comment>Description:</comment>
  Set/Get current language
  
  Set/Get the current language.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$language</strong>  Used for encoding e-mail messages. The valid languages are listed in the
                         following table. <strong>mb_send_mail()</strong> uses this setting to encode e-mail.

<comment>Return:</comment>
  <info>stringbool</info>  If <strong>$language</strong> is set and <strong>$language</strong> is valid, it returns <info>true</info>. Otherwise, it returns
              <info>false</info>.  When <strong>$language</strong> is omitted or <info>null</info>, it returns the language name as a <info>string</info>.

<comment>See Also:</comment>
   * <strong>mb_send_mail()</strong>


id: mb_list_encodings
type: function
doc:
<comment>Description:</comment>
  Returns an array of all supported encodings
  
  Returns an array containing all supported encodings.

<comment>Return:</comment>
  <info>array</info>  Returns a numerically indexed array.


id: mb_ord
type: function
doc:
<comment>Description:</comment>
  Get code point of character
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  
  <info>stringnull</info>  <strong>$encoding</strong>  

<comment>Return:</comment>
  <info>intfalse</info>  Returns a code point of character o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_chr()</strong>
   * <strong>ord()</strong>


id: mb_output_handler
type: function
doc:
<comment>Description:</comment>
  Callback function converts character encoding in output buffer
  
  <strong>mb_output_handler()</strong> is <strong>ob_start()</strong> callback function. <strong>mb_output_handler()</strong> converts characters in
  the output buffer from internal character encoding to HTTP output character encoding.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The contents of the output buffer.
  <info>int   </info>  <strong>$status</strong>  The status of the output buffer.

<comment>Return:</comment>
  <info>string</info>  The converted <info>string</info>.

<comment>See Also:</comment>
   * <strong>ob_start()</strong>


id: mb_parse_str
type: function
doc:
<comment>Description:</comment>
  Parse GET/POST/COOKIE data and set global variable
  
  Parses GET/POST/COOKIE data and sets global variables. Since PHP does not provide raw POST/COOKIE
  data, it can only be used for GET data for now. It parses URL encoded data, detects encoding,
  converts coding to internal encoding and set values to the <strong>$result</strong> <info>array</info> or global variables.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The URL encoded data.
  <info>array </info>  <strong>$result</strong>  An <info>array</info> containing decoded and character encoded converted values.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_detect_order()</strong>
   * <strong>mb_internal_encoding()</strong>


id: mb_preferred_mime_name
type: function
doc:
<comment>Description:</comment>
  Get MIME charset string
  
  Get a MIME charset <info>string</info> for a specific encoding.

<comment>Param:</comment>
  <info>string</info>  <strong>$encoding</strong>  The encoding being checked.

<comment>Return:</comment>
  <info>stringfalse</info>  The MIME <return>charset</return> <info>string</info> for character encoding <strong>$encoding</strong>, or <info>false</info> if no charset is
               preferred for the given <strong>$encoding</strong>.


id: mb_regex_encoding
type: function
doc:
<comment>Description:</comment>
  Set/Get character encoding for multibyte regex
  
  Set/Get character encoding for a multibyte regex.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>stringbool</info>  If <strong>$encoding</strong> is set, then  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di
              fallimento.  In this case, the internal character encoding is NOT changed. If
              <strong>$encoding</strong> is omitted, then  the current character encoding name for a multibyte regex
              is returned.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>mb_ereg()</strong>


id: mb_regex_set_options
type: function
doc:
<comment>Description:</comment>
  Set/Get the default options for mbregex functions
  
  Sets the default options described by <strong>$options</strong>  for multibyte regex functions.

<comment>Param:</comment>
  <info>stringnull</info>  <strong>$options</strong>  The options to set. This is a string where each  character is an option. To
                        set a mode, the mode  character must be the last one set, however there  can
                        only be set one mode but multiple options.

<comment>Return:</comment>
  <info>string</info>  The previous options. If <strong>$options</strong> is omitted or <info>null</info>,  it returns the <info>string</info> that
          describes the current options.

<comment>See Also:</comment>
   * <strong>mb_split()</strong>
   * <strong>mb_ereg()</strong>
   * <strong>mb_eregi()</strong>


id: mb_scrub
type: function
doc:
<comment>Description:</comment>
  Description
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  
  <info>stringnull</info>  <strong>$encoding</strong>  

<comment>Return:</comment>
  <info>string</info>  


id: mb_send_mail
type: function
doc:
<comment>Description:</comment>
  Send encoded mail
  
  Sends email. Headers and messages are converted and encoded according to the <strong>mb_language()</strong>
  setting. It's a wrapper function for <strong>mail()</strong>, so see also <strong>mail()</strong> for details.

<comment>Param:</comment>
  <info>string     </info>  <strong>$to                </strong>  The mail addresses being sent to. Multiple recipients may be
                                    specified by putting a comma between each address in <strong>$to</strong>.  This
                                    parameter is not automatically encoded.
  <info>string     </info>  <strong>$subject           </strong>  The subject of the mail.
  <info>string     </info>  <strong>$message           </strong>  The message of the mail.
  <info>arraystring</info>  <strong>$additional_headers</strong>  <info>String</info> or <info>array</info> to be inserted at the end of the email header.
                                    
                                    This is typically used to add extra headers (From, Cc, and Bcc).
                                    Multiple extra headers should be separated with a CRLF (\r\n).
                                    Validate parameter not to be injected unwanted headers by
                                    attackers.
                                    
                                    If an <info>array</info> is passed, its keys are the header names and its
                                    values are the respective header values.
                                    
                                    When sending mail, the mail must contain a <return>From</return> header. This can
                                    be set with the  <strong>$additional_headers</strong> parameter, or a default can
                                    be set in php.ini.
                                    
                                    Failing to do this will result in an error message similar to
                                    <return>Warning: mail(): "sendmail_from" not set in php.ini or custom
                                    "From:" header missing</return>. The <return>From</return> header sets also <return>Return-Path</return>
                                    under Windows.
                                    
                                    If messages are not received, try using a LF (\n) only. Some
                                    Unix mail transfer agents (most notably qmail) replace LF by
                                    CRLF automatically (which leads to doubling CR if CRLF is used).
                                    This should be a last resort, as it does not comply with RFC
                                    2822.
  <info>stringnull </info>  <strong>$additional_params </strong>  <strong>$additional_params</strong> is a MTA command line parameter. It is useful
                                    when setting the correct Return-Path header when using sendmail.
                                    
                                    This parameter is escaped by <strong>escapeshellcmd()</strong> internally to
                                    prevent command execution. <strong>escapeshellcmd()</strong> prevents command
                                    execution, but allows to add additional parameters. For security
                                    reason, this parameter should be validated.
                                    
                                    Since <strong>escapeshellcmd()</strong> is applied automatically, some characters
                                    that are allowed as email addresses by internet RFCs cannot be
                                    used. Programs that are required to use these characters <strong>mail()</strong>
                                    cannot be used.
                                    
                                    The user that the webserver runs as should be added as a trusted
                                    user to the sendmail configuration to prevent a 'X-Warning'
                                    header from being added to the message when the envelope sender
                                    (-f) is set using this method. For sendmail users, this file is
                                    /etc/mail/trusted-users.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mail()</strong>
   * <strong>mb_encode_mimeheader()</strong>
   * <strong>mb_language()</strong>


id: mb_split
type: function
doc:
<comment>Description:</comment>
  Split multibyte string using regular expression
  
  Split a multibyte <strong>$string</strong> using regular expression <strong>$pattern</strong> and returns the result as an <info>array</info>.

<comment>Param:</comment>
  <info>string</info>  <strong>$pattern</strong>  The regular expression pattern.
  <info>string</info>  <strong>$string </strong>  The <info>string</info> being split.
  <info>int   </info>  <strong>$limit  </strong>  If optional parameter <strong>$limit</strong> is specified,  it will be split in <strong>$limit</strong> elements
                    as maximum.

<comment>Return:</comment>
  <info>arrayfalse</info>  The result as an <info>array</info>,  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mb_regex_encoding()</strong>
   * <strong>mb_ereg()</strong>


id: mb_str_split
type: function
doc:
<comment>Description:</comment>
  Given a multibyte string, return an array of its characters
  
  This function will return an array of strings, it is a version of <strong>str_split()</strong> with support for
  encodings of variable character size as well as fixed-size encodings of 1,2 or 4 byte characters.
  If the <strong>$length</strong> parameter is specified, the string is broken down into chunks of the specified
  length in characters (not bytes). The <strong>$encoding</strong> parameter can be optionally specified and it is
  good practice to do so.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> to split into characters or chunks.
  <info>int       </info>  <strong>$length  </strong>  If specified, each element of the returned array will be composed of
                         multiple characters instead of a single character.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.
                         
                         A string specifying one of the supported encodings.

<comment>Return:</comment>
  <info>array</info>  <strong>mb_str_split()</strong> returns an array of strings.

<comment>See Also:</comment>
   * <strong>str_split()</strong>


id: mb_strcut
type: function
doc:
<comment>Description:</comment>
  Get part of string
  
  <strong>mb_strcut()</strong> extracts a substring from a string similarly to <strong>mb_substr()</strong>, but operates on bytes
  instead of characters. If the cut position happens to be between two bytes of a multi-byte
  character, the cut is performed starting from the first byte of that character. This is also the
  difference to the <strong>substr()</strong> function, which would simply cut the string between the bytes and thus
  result in a malformed byte sequence.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being cut.
  <info>int       </info>  <strong>$start   </strong>  If <strong>$start</strong> is non-negative, the returned string will start at the <strong>$start</strong>'th
                         byte position in <strong>$string</strong>, counting from zero. For instance, in the string
                         '<return>abcdef</return>', the byte at position <return>0</return> is '<return>a</return>', the byte at position <return>2</return> is '<return>c</return>', and
                         so forth.
                         
                         If <strong>$start</strong> is negative, the returned string will start at the <strong>$start</strong>'th byte
                         counting back from the end of <strong>$string</strong>. However, if the magnitude of a
                         negative <strong>$start</strong> is greater than the length of the string, the returned
                         portion will start from the beginning of <strong>$string</strong>.
  <info>intnull   </info>  <strong>$length  </strong>  Length in bytes. If omitted or <return>NULL</return> is passed, extract all bytes to the end
                         of the string.
                         
                         If <strong>$length</strong> is negative, the returned string will end at the <strong>$length</strong>'th byte
                         counting back from the end of <strong>$string</strong>. However, if the magnitude of a
                         negative <strong>$length</strong> is greater than the number of characters after the <strong>$start</strong>
                         position, an empty string will be returned.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>string</info>  <strong>mb_strcut()</strong> returns the portion of <strong>$string</strong> specified by the <strong>$start</strong> and <strong>$length</strong> parameters.

<comment>See Also:</comment>
   * <strong>mb_substr()</strong>
   * <strong>mb_internal_encoding()</strong>


id: mb_strimwidth
type: function
doc:
<comment>Description:</comment>
  Get truncated string with specified width
  
  Truncates <info>string</info> <strong>$string</strong> to specified <strong>$width</strong>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string     </strong>  The <info>string</info> being decoded.
  <info>int       </info>  <strong>$start      </strong>  The start position offset. Number of characters from the beginning of
                            string (first character is 0), or if start is negative, number of
                            characters from the end of the string.
  <info>int       </info>  <strong>$width      </strong>  The width of the desired trim. Negative widths count from the end of the
                            string.
  <info>string    </info>  <strong>$trim_marker</strong>  A string that is added to the end of string  when string is truncated.
  <info>stringnull</info>  <strong>$encoding   </strong>  Il parametro <strong>$encoding</strong> 
                            è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                            codifica interna.

<comment>Return:</comment>
  <info>string</info>  The truncated <info>string</info>. If <strong>$trim_marker</strong> is set, <strong>$trim_marker</strong> replaces the last chars to
          match the <strong>$width</strong>.

<comment>See Also:</comment>
   * <strong>mb_strwidth()</strong>
   * <strong>mb_internal_encoding()</strong>


id: mb_stripos
type: function
doc:
<comment>Description:</comment>
  Finds position of first occurrence of a string within another, case insensitive
  
  <strong>mb_stripos()</strong> returns the numeric position of the first occurrence of <strong>$needle</strong> in the <strong>$haystack</strong>
  string. Unlike <strong>mb_strpos()</strong>,  <strong>mb_stripos()</strong> is case-insensitive. If <strong>$needle</strong> is not found, it returns
  <info>false</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack</strong>  The string from which to get the position of the first occurrence of
                         <strong>$needle</strong>
  <info>string    </info>  <strong>$needle  </strong>  The string to find in <strong>$haystack</strong>
  <info>int       </info>  <strong>$offset  </strong>  The position in <strong>$haystack</strong> to start searching. A negative offset counts from
                         the end of the string.
  <info>stringnull</info>  <strong>$encoding</strong>  Character encoding name to use. If it is omitted, internal character
                         encoding is used.

<comment>Return:</comment>
  <info>intfalse</info>  Return the numeric position of the first occurrence of <strong>$needle</strong> in the <strong>$haystack</strong> string,
            or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>stripos()</strong>
   * <strong>strpos()</strong>
   * <strong>mb_strpos()</strong>


id: mb_stristr
type: function
doc:
<comment>Description:</comment>
  Finds first occurrence of a string within another, case insensitive
  
  <strong>mb_stristr()</strong> finds the first occurrence of <strong>$needle</strong> in <strong>$haystack</strong> and returns the portion of
  <strong>$haystack</strong>. Unlike <strong>mb_strstr()</strong>,  <strong>mb_stristr()</strong> is case-insensitive. If <strong>$needle</strong> is not found, it
  returns <info>false</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack     </strong>  The string from which to get the first occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle       </strong>  The string to find in <strong>$haystack</strong>
  <info>bool      </info>  <strong>$before_needle</strong>  Determines which portion of <strong>$haystack</strong> this function returns.  If set
                              to <info>true</info>, it returns all of  <strong>$haystack</strong> from the beginning to the first
                              occurrence of <strong>$needle</strong> (excluding needle). If set to <info>false</info>, it returns
                              all of <strong>$haystack</strong> from the first occurrence of <strong>$needle</strong> to the end
                              (including needle).
  <info>stringnull</info>  <strong>$encoding     </strong>  Character encoding name to use. If it is omitted, internal character
                              encoding is used.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the portion of <strong>$haystack</strong>, or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>stristr()</strong>
   * <strong>strstr()</strong>
   * <strong>mb_strstr()</strong>


id: mb_strlen
type: function
doc:
<comment>Description:</comment>
  Get string length
  
  Gets the length of a <info>string</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being checked for length.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>int</info>  Returns the number of characters in <info>string</info> <strong>$string</strong> having character encoding <strong>$encoding</strong>. A
       multi-byte character is counted as 1.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>grapheme_strlen()</strong>
   * <strong>iconv_strlen()</strong>
   * <strong>strlen()</strong>


id: mb_strpos
type: function
doc:
<comment>Description:</comment>
  Find position of first occurrence of string in a string
  
  Finds position of the first occurrence of a <info>string</info> in a <info>string</info>.
  
  Performs a multi-byte safe <strong>strpos()</strong> operation based on number of characters. The first character's
  position is 0, the second character position is 1, and so on.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack</strong>  The <info>string</info> being checked.
  <info>string    </info>  <strong>$needle  </strong>  The string to find in <strong>$haystack</strong>. In contrast with <strong>strpos()</strong>, numeric values
                         are not applied as the ordinal value of a character.
  <info>int       </info>  <strong>$offset  </strong>  The search offset. If it is not specified, 0 is used. A negative offset
                         counts from the end of the string.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>intfalse</info>  Returns the numeric position of the first occurrence of <strong>$needle</strong> in the <strong>$haystack</strong> <info>string</info>.
            If <strong>$needle</strong> is not found, it returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>mb_internal_encoding()</strong>
   * <strong>strpos()</strong>


id: mb_strrchr
type: function
doc:
<comment>Description:</comment>
  Finds the last occurrence of a character in a string within another
  
  <strong>mb_strrchr()</strong> finds the last occurrence of <strong>$needle</strong> in <strong>$haystack</strong> and returns the portion of
  <strong>$haystack</strong>. If <strong>$needle</strong> is not found, it returns <info>false</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack     </strong>  The string from which to get the last occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle       </strong>  The string to find in <strong>$haystack</strong>
  <info>bool      </info>  <strong>$before_needle</strong>  Determines which portion of <strong>$haystack</strong> this function returns.  If set
                              to <info>true</info>, it returns all of <strong>$haystack</strong> from the beginning to the last
                              occurrence of <strong>$needle</strong>. If set to <info>false</info>, it returns all of <strong>$haystack</strong>
                              from the last occurrence of <strong>$needle</strong> to the end,
  <info>stringnull</info>  <strong>$encoding     </strong>  Character encoding name to use. If it is omitted, internal character
                              encoding is used.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the portion of <strong>$haystack</strong>. or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>strrchr()</strong>
   * <strong>mb_strstr()</strong>
   * <strong>mb_strrichr()</strong>


id: mb_strrichr
type: function
doc:
<comment>Description:</comment>
  Finds the last occurrence of a character in a string within another, case insensitive
  
  <strong>mb_strrichr()</strong> finds the last occurrence of <strong>$needle</strong> in <strong>$haystack</strong> and returns the portion of
  <strong>$haystack</strong>. Unlike <strong>mb_strrchr()</strong>, <strong>mb_strrichr()</strong> is case-insensitive. If <strong>$needle</strong> is not found, it
  returns <info>false</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack     </strong>  The string from which to get the last occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle       </strong>  The string to find in <strong>$haystack</strong>
  <info>bool      </info>  <strong>$before_needle</strong>  Determines which portion of <strong>$haystack</strong> this function returns.  If set
                              to <info>true</info>, it returns all of <strong>$haystack</strong> from the beginning to the last
                              occurrence of <strong>$needle</strong>. If set to <info>false</info>, it returns all of <strong>$haystack</strong>
                              from the last occurrence of <strong>$needle</strong> to the end,
  <info>stringnull</info>  <strong>$encoding     </strong>  Character encoding name to use. If it is omitted, internal character
                              encoding is used.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the portion of <strong>$haystack</strong>. or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>mb_stristr()</strong>
   * <strong>mb_strrchr()</strong>


id: mb_strripos
type: function
doc:
<comment>Description:</comment>
  Finds position of last occurrence of a string within another, case insensitive
  
  <strong>mb_strripos()</strong> performs multi-byte safe <strong>strripos()</strong> operation based on number of characters. <strong>$needle</strong>
  position is counted from the beginning of <strong>$haystack</strong>. First character's position is 0. Second
  character position is 1.  Unlike <strong>mb_strrpos()</strong>, <strong>mb_strripos()</strong> is case-insensitive.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack</strong>  The string from which to get the position of the last occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle  </strong>  The string to find in <strong>$haystack</strong>
  <info>int       </info>  <strong>$offset  </strong>  The position in <strong>$haystack</strong> to start searching
  <info>stringnull</info>  <strong>$encoding</strong>  Character encoding name to use. If it is omitted, internal character
                         encoding is used.

<comment>Return:</comment>
  <info>intfalse</info>  Return the numeric position of the last occurrence of <strong>$needle</strong> in the <strong>$haystack</strong> string,
            or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>strripos()</strong>
   * <strong>strrpos()</strong>
   * <strong>mb_strrpos()</strong>


id: mb_strrpos
type: function
doc:
<comment>Description:</comment>
  Find position of last occurrence of a string in a string
  
  Performs a multibyte safe <strong>strrpos()</strong> operation based on the  number of characters. <strong>$needle</strong> position
  is counted from the beginning of <strong>$haystack</strong>. First character's position is 0. Second character
  position is 1.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack</strong>  The <info>string</info> being checked, for the last occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle  </strong>  The <info>string</info> to find in <strong>$haystack</strong>.
  <info>int       </info>  <strong>$offset  </strong>  May be specified to begin searching an arbitrary number of characters into
                         the <info>string</info>.  Negative values will stop searching at an arbitrary point
                         prior to the end of the <info>string</info>.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>intfalse</info>  Returns the numeric position of the last occurrence of <strong>$needle</strong> in the <strong>$haystack</strong> <info>string</info>.
            If <strong>$needle</strong> is not found, it returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>mb_strpos()</strong>
   * <strong>mb_internal_encoding()</strong>
   * <strong>strrpos()</strong>


id: mb_strstr
type: function
doc:
<comment>Description:</comment>
  Finds first occurrence of a string within another
  
  <strong>mb_strstr()</strong> finds the first occurrence of <strong>$needle</strong> in <strong>$haystack</strong> and returns the portion of
  <strong>$haystack</strong>. If <strong>$needle</strong> is not found, it returns <info>false</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack     </strong>  The string from which to get the first occurrence of <strong>$needle</strong>
  <info>string    </info>  <strong>$needle       </strong>  The string to find in <strong>$haystack</strong>
  <info>bool      </info>  <strong>$before_needle</strong>  Determines which portion of <strong>$haystack</strong> this function returns.  If set
                              to <info>true</info>, it returns all of  <strong>$haystack</strong> from the beginning to the first
                              occurrence of <strong>$needle</strong> (excluding needle). If set to <info>false</info>, it returns
                              all of <strong>$haystack</strong> from the first occurrence of <strong>$needle</strong> to the end
                              (including needle).
  <info>stringnull</info>  <strong>$encoding     </strong>  Character encoding name to use. If it is omitted, internal character
                              encoding is used.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the portion of <strong>$haystack</strong>, or <info>false</info> if <strong>$needle</strong> is not found.

<comment>See Also:</comment>
   * <strong>stristr()</strong>
   * <strong>strstr()</strong>
   * <strong>mb_stristr()</strong>


id: mb_strtolower
type: function
doc:
<comment>Description:</comment>
  Make a string lowercase
  
  Returns <strong>$string</strong> with all alphabetic characters converted to lowercase.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being lowercased.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>string</info>  <strong>$string</strong> with all alphabetic characters converted to lowercase.

<comment>See Also:</comment>
   * <strong>mb_strtoupper()</strong>
   * <strong>mb_convert_case()</strong>
   * <strong>strtolower()</strong>


id: mb_strtoupper
type: function
doc:
<comment>Description:</comment>
  Trasforma una stringa in lettere maiuscole
  
  Restituisce <strong>$string</strong> con tutti i caratteri alfabetici convertiti in maiuscolo.

<comment>Param:</comment>
  <info>string</info>  <strong>$str     </strong>  La <info>string</info> da convertire in maiuscolo.
  <info>string</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                     è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                     codifica interna.

<comment>Return:</comment>
  <info>string</info>  <strong>$str</strong> con tutti i caratteri alfabetici convertiti in maiuscolo.

<comment>See Also:</comment>
   * <strong>mb_strtolower()</strong>
   * <strong>mb_convert_case()</strong>
   * <strong>strtoupper()</strong>


id: mb_strwidth
type: function
doc:
<comment>Description:</comment>
  Return width of string
  
  Returns the width of <info>string</info> <strong>$string</strong>, where halfwidth characters count as <return>1</return>, and fullwidth
  characters count as <return>2</return>.
  
  The fullwidth characters are: <return>U+1100</return>-<return>U+115F</return>, <return>U+11A3</return>-<return>U+11A7</return>, <return>U+11FA</return>-<return>U+11FF</return>, <return>U+2329</return>-<return>U+232A</return>,
  <return>U+2E80</return>-<return>U+2E99</return>, <return>U+2E9B</return>-<return>U+2EF3</return>, <return>U+2F00</return>-<return>U+2FD5</return>, <return>U+2FF0</return>-<return>U+2FFB</return>, <return>U+3000</return>-<return>U+303E</return>, <return>U+3041</return>-<return>U+3096</return>,
  <return>U+3099</return>-<return>U+30FF</return>, <return>U+3105</return>-<return>U+312D</return>, <return>U+3131</return>-<return>U+318E</return>, <return>U+3190</return>-<return>U+31BA</return>, <return>U+31C0</return>-<return>U+31E3</return>, <return>U+31F0</return>-<return>U+321E</return>,
  <return>U+3220</return>-<return>U+3247</return>, <return>U+3250</return>-<return>U+32FE</return>, <return>U+3300</return>-<return>U+4DBF</return>, <return>U+4E00</return>-<return>U+A48C</return>, <return>U+A490</return>-<return>U+A4C6</return>, <return>U+A960</return>-<return>U+A97C</return>,
  <return>U+AC00</return>-<return>U+D7A3</return>, <return>U+D7B0</return>-<return>U+D7C6</return>, <return>U+D7CB</return>-<return>U+D7FB</return>, <return>U+F900</return>-<return>U+FAFF</return>, <return>U+FE10</return>-<return>U+FE19</return>, <return>U+FE30</return>-<return>U+FE52</return>,
  <return>U+FE54</return>-<return>U+FE66</return>, <return>U+FE68</return>-<return>U+FE6B</return>, <return>U+FF01</return>-<return>U+FF60</return>, <return>U+FFE0</return>-<return>U+FFE6</return>, <return>U+1B000</return>-<return>U+1B001</return>, <return>U+1F200</return>-<return>U+1F202</return>,
  <return>U+1F210</return>-<return>U+1F23A</return>, <return>U+1F240</return>-<return>U+1F248</return>, <return>U+1F250</return>-<return>U+1F251</return>, <return>U+20000</return>-<return>U+2FFFD</return>, <return>U+30000</return>-<return>U+3FFFD</return>. All other
  characters are halfwidth characters.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> being decoded.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>int</info>  The width of <info>string</info> <strong>$string</strong>.

<comment>See Also:</comment>
   * <strong>mb_strimwidth()</strong>
   * <strong>mb_internal_encoding()</strong>


id: mb_substitute_character
type: function
doc:
<comment>Description:</comment>
  Set/Get substitution character
  
  Specifies a substitution character when input character encoding is invalid or character code does
  not exist in output character encoding. Invalid characters may be substituted <return>"none"</return> (no output),
  <info>string</info> or <info>int</info> value (Unicode character code value).
  
  This setting affects <strong>mb_convert_encoding()</strong>, <strong>mb_convert_variables()</strong>, <strong>mb_output_handler()</strong>, and
  <strong>mb_send_mail()</strong>.

<comment>Param:</comment>
  <info>stringintnull</info>  <strong>$substitute_character</strong>  Specify the Unicode value as an <info>int</info>,  or as one of the
                                        following <info>string</info>s: <return>"none"</return>: no output <return>"long"</return>: Output
                                        character code value (Example: <return>U+3000</return>, <return>JIS+7E7E</return>) <return>"entity"</return>:
                                        Output character entity (Example: <return>&#x200;</return>)
                                        
                                        <return>"none"</return>: no output
                                        
                                        <return>"long"</return>: Output character code value (Example: <return>U+3000</return>,
                                        <return>JIS+7E7E</return>)
                                        
                                        <return>"entity"</return>: Output character entity (Example: <return>&#x200;</return>)

<comment>Return:</comment>
  <info>stringintbool</info>  If <strong>$substitute_character</strong> is set, it returns <info>true</info> for success, otherwise returns
                 <info>false</info>.  If <strong>$substitute_character</strong> is not set, it returns the current setting.


id: mb_substr
type: function
doc:
<comment>Description:</comment>
  Get part of string
  
  Performs a multi-byte safe <strong>substr()</strong> operation based on number of characters. Position is counted
  from the beginning of <strong>$string</strong>. First character's position is 0. Second character position is 1,
  and so on.

<comment>Param:</comment>
  <info>string    </info>  <strong>$string  </strong>  The <info>string</info> to extract the substring from.
  <info>int       </info>  <strong>$start   </strong>  If <strong>$start</strong> is non-negative, the returned string will start at the <strong>$start</strong>'th
                         position in <strong>$string</strong>, counting from zero. For instance, in the string
                         '<return>abcdef</return>', the character at position <return>0</return> is '<return>a</return>', the character at position <return>2</return>
                         is '<return>c</return>', and so forth.
                         
                         If <strong>$start</strong> is negative, the returned string will start at the <strong>$start</strong>'th
                         character from the end of <strong>$string</strong>.
  <info>intnull   </info>  <strong>$length  </strong>  Maximum number of characters to use from <strong>$string</strong>. If omitted or <return>NULL</return> is
                         passed, extract all characters to the end of the string.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>string</info>  <strong>mb_substr()</strong> returns the portion of <strong>$string</strong> specified by the <strong>$start</strong> and <strong>$length</strong> parameters.

<comment>See Also:</comment>
   * <strong>mb_strcut()</strong>
   * <strong>mb_internal_encoding()</strong>


id: mb_substr_count
type: function
doc:
<comment>Description:</comment>
  Count the number of substring occurrences
  
  Counts the number of times the <strong>$needle</strong> substring occurs in the <strong>$haystack</strong> <info>string</info>.

<comment>Param:</comment>
  <info>string    </info>  <strong>$haystack</strong>  The <info>string</info> being checked.
  <info>string    </info>  <strong>$needle  </strong>  The <info>string</info> being found.
  <info>stringnull</info>  <strong>$encoding</strong>  Il parametro <strong>$encoding</strong> 
                         è la codifica dei caratteri. Se è omesso, verrà utilizzata la 
                         codifica interna.

<comment>Return:</comment>
  <info>int</info>  The number of times the <strong>$needle</strong> substring occurs in the <strong>$haystack</strong> <info>string</info>.

<comment>See Also:</comment>
   * <strong>mb_strpos()</strong>
   * <strong>mb_substr()</strong>
   * <strong>substr_count()</strong>


id: mcrypt_cbc
type: function
doc:
<comment>Description:</comment>
  Encrypts/decrypts data in CBC mode
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or higher. The <strong>$mode</strong> should be either <info>MCRYPT_ENCRYPT</info> or <info>MCRYPT_DECRYPT</info>.

<comment>Return:</comment>
  <info>string</info>  


id: mcrypt_cfb
type: function
doc:
<comment>Description:</comment>
  Encrypts/decrypts data in CFB mode
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or higher. The <strong>$mode</strong> should be either <info>MCRYPT_ENCRYPT</info> or <info>MCRYPT_DECRYPT</info>.

<comment>Return:</comment>
  <info>string</info>  


id: mcrypt_create_iv
type: function
doc:
<comment>Description:</comment>
  Creates an initialization vector (IV) from a random source
  
  Creates an initialization vector (IV) from a random source.
  
  The IV is only meant to give an alternative seed to the encryption routines. This IV does not need
  to be secret at all, though it can be desirable. You even can send it along with your ciphertext
  without losing security.

<comment>Param:</comment>
  <info>int</info>  <strong>$size  </strong>  The size of the IV.
  <info>int</info>  <strong>$source</strong>  The source of the IV. The source can be <info>MCRYPT_RAND</info> (system random number
                generator), <info>MCRYPT_DEV_RANDOM</info> (read data from /dev/random) and <info>MCRYPT_DEV_URANDOM</info>
                (read data from /dev/urandom). Prior to 5.3.0, <info>MCRYPT_RAND</info> was the only one
                supported on Windows.
                
                Note that the default value of this parameter was <info>MCRYPT_DEV_RANDOM</info> prior to PHP
                5.6.0.
                
                Note that <info>MCRYPT_DEV_RANDOM</info> may block until more entropy is available.

<comment>Return:</comment>
  <info>string</info>  Returns the initialization vector, or <info>false</info> on error.

<comment>See Also:</comment>
   * http://www.ciphersbyritter.com/GLOSSARY.HTM#IV
   * http://www.quadibloc.com/crypto/co0409.htm
   * Chapter 9.3 of Applied Cryptography by Schneier (ISBN 0-471-11709-9)
   * <strong>random_bytes()</strong>


id: mcrypt_decrypt
type: function
doc:
<comment>Description:</comment>
  Decrypts crypttext with given parameters
  
  Decrypts the <strong>$data</strong> and returns the unencrypted data.

<comment>Param:</comment>
  <info>string</info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma
                   di stringa.
  <info>string</info>  <strong>$key   </strong>  The key with which the data was encrypted. If the provided key size is not
                   supported by the cipher, the function will emit a warning and return <info>false</info>
  <info>string</info>  <strong>$data  </strong>  The data that will be decrypted with the given <strong>$cipher</strong> and <strong>$mode</strong>. If the size of
                   the data is not n * blocksize, the data will be padded with '<return>\0</return>'.
  <info>string</info>  <strong>$mode  </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                   "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
  <info>string</info>  <strong>$iv    </strong>  Used for the initialization in CBC, CFB, OFB modes, and in some algorithms in
                   STREAM mode. If the provided IV size is not supported by the chaining mode or no
                   IV was provided, but the chaining mode requires one, the function will emit a
                   warning and return <info>false</info>.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the decrypted data as a string  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_encrypt()</strong>


id: mcrypt_ecb
type: function
doc:
<comment>Description:</comment>
  Deprecated: Encrypts/decrypts data in ECB mode
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or higher. The <strong>$mode</strong> should be either <info>MCRYPT_ENCRYPT</info> or <info>MCRYPT_DECRYPT</info>.

<comment>Return:</comment>
  <info>string</info>  


id: mcrypt_enc_get_algorithms_name
type: function
doc:
<comment>Description:</comment>
  Returns the name of the opened algorithm
  
  This function returns the name of the algorithm.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>string</info>  Returns the name of the opened algorithm as a string.


id: mcrypt_enc_get_block_size
type: function
doc:
<comment>Description:</comment>
  Returns the blocksize of the opened algorithm
  
  Gets the blocksize of the opened algorithm.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>int</info>  Returns the block size of the specified algorithm in bytes.


id: mcrypt_enc_get_iv_size
type: function
doc:
<comment>Description:</comment>
  Returns the size of the IV of the opened algorithm
  
  This function returns the size of the IV of the algorithm specified by the encryption descriptor
  in bytes. An IV is used in cbc, cfb and ofb modes, and in some algorithms in stream mode.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>int</info>  Returns the size of the IV, or 0 if the IV is ignored by the algorithm.


id: mcrypt_enc_get_key_size
type: function
doc:
<comment>Description:</comment>
  Returns the maximum supported keysize of the opened mode
  
  Gets the maximum supported key size of the algorithm in bytes.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>int</info>  Returns the maximum supported key size of the algorithm in bytes.


id: mcrypt_enc_get_modes_name
type: function
doc:
<comment>Description:</comment>
  Returns the name of the opened mode
  
  This function returns the name of the mode.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>string</info>  Returns the name as a string.


id: mcrypt_enc_get_supported_key_sizes
type: function
doc:
<comment>Description:</comment>
  Returns an array with the supported keysizes of the opened algorithm
  
  Gets the supported key sizes of the opened algorithm.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>array</info>  Returns an array with the key sizes supported by the algorithm specified by the encryption
         descriptor. If it returns an empty array then all key sizes between 1 and
         <strong>mcrypt_enc_get_key_size()</strong> are supported by the algorithm.


id: mcrypt_enc_is_block_algorithm
type: function
doc:
<comment>Description:</comment>
  Checks whether the algorithm of the opened mode is a block algorithm
  
  Tells whether the algorithm of the opened mode is a block algorithm.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the algorithm is a block algorithm or <info>false</info> if it is a stream one.


id: mcrypt_enc_is_block_algorithm_mode
type: function
doc:
<comment>Description:</comment>
  Checks whether the encryption of the opened mode works on blocks
  
  Tells whether the algorithm of the opened mode works on blocks (e.g. <info>false</info> for stream, and <info>true</info>
  for cbc, cfb, ofb)..

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the mode is for use with block algorithms, otherwise it returns <info>false</info>.


id: mcrypt_enc_is_block_mode
type: function
doc:
<comment>Description:</comment>
  Checks whether the opened mode outputs blocks
  
  Tells whether the opened mode outputs blocks (e.g. <info>true</info> for cbc and ecb, and <info>false</info> for cfb and
  stream).

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the mode outputs blocks of bytes, or <info>false</info> if it outputs just bytes.


id: mcrypt_enc_self_test
type: function
doc:
<comment>Description:</comment>
  Runs a self test on the opened module
  
  This function runs the self test on the algorithm specified by the descriptor <strong>$td</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>int</info>  Returns <return>0</return> on success and a negative <info>int</info> on failure.


id: mcrypt_encrypt
type: function
doc:
<comment>Description:</comment>
  Encrypts plaintext with given parameters
  
  Encrypts the data and returns it.

<comment>Param:</comment>
  <info>string</info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma
                   di stringa.
  <info>string</info>  <strong>$key   </strong>  The key with which the data will be encrypted. If the provided key size is not
                   supported by the cipher, the function will emit a warning and return <info>false</info>
  <info>string</info>  <strong>$data  </strong>  The data that will be encrypted with the given <strong>$cipher</strong> and <strong>$mode</strong>. If the size of
                   the data is not n * blocksize, the data will be padded with '<return>\0</return>'.
                   
                   The returned crypttext can be larger than the size of the data that was given by
                   <strong>$data</strong>.
  <info>string</info>  <strong>$mode  </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                   "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
  <info>string</info>  <strong>$iv    </strong>  Used for the initialization in CBC, CFB, OFB modes, and in some algorithms in
                   STREAM mode. If the provided IV size is not supported by the chaining mode or no
                   IV was provided, but the chaining mode requires one, the function will emit a
                   warning and return <info>false</info>.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the encrypted data as a string  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_decrypt()</strong>
   * <strong>mcrypt_module_open()</strong>


id: mcrypt_generic
type: function
doc:
<comment>Description:</comment>
  This function encrypts data
  
  This function encrypts data. The data is padded with "<return>\0</return>" to make sure the length of the data is n
  * blocksize. This function returns the encrypted data. Note that the length of the returned string
  can in fact be longer than the input, due to the padding of the data.
  
  If you want to store the encrypted data in a database make sure to store the entire string as
  returned by mcrypt_generic, or the string will not entirely decrypt properly.  If your original
  string is 10 characters long and the block size is 8 (use <strong>mcrypt_enc_get_block_size()</strong> to determine
  the blocksize), you would need at least 16 characters in your database field. Note the string
  returned by <strong>mdecrypt_generic()</strong> will be 16 characters as well...use rtrim($str, "\0") to remove the
  padding.
  
  If you are for example storing the data in a MySQL database remember that varchar fields
  automatically have trailing spaces removed during insertion. As encrypted data can end in a space
  (ASCII 32), the data will be damaged by this removal.  Store data in a tinyblob/tinytext (or
  larger) field instead.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td  </strong>  The encryption descriptor.
                   
                   The encryption handle should always be initialized with <strong>mcrypt_generic_init()</strong>
                   with a key and an IV before calling this function. Where the encryption is done,
                   you should free the encryption buffers by calling <strong>mcrypt_generic_deinit()</strong>. See
                   <strong>mcrypt_module_open()</strong> for an example.
  <info>string  </info>  <strong>$data</strong>  The data to encrypt.

<comment>Return:</comment>
  <info>string</info>  Returns the encrypted data.

<comment>See Also:</comment>
   * <strong>mdecrypt_generic()</strong>
   * <strong>mcrypt_generic_init()</strong>
   * <strong>mcrypt_generic_deinit()</strong>


id: mcrypt_generic_deinit
type: function
doc:
<comment>Description:</comment>
  This function deinitializes an encryption module
  
  This function terminates encryption specified by the encryption descriptor (<strong>$td</strong>). It clears all
  buffers, but does not close the module.  You need to call <strong>mcrypt_module_close()</strong> yourself. (But PHP
  does this for you at the end of the script.)

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_module_open()</strong>
   * <strong>mcrypt_generic_init()</strong>


id: mcrypt_generic_end
type: function
doc:
<comment>Description:</comment>
  This function terminates encryption
  
  <strong>mcrypt_generic_deinit()</strong> should be used instead of this function, as it can cause crashes when used
  with <strong>mcrypt_module_close()</strong> due to multiple buffer frees.
  
  <strong>mcrypt_generic_deinit()</strong> should be used instead of this function, as it can cause crashes when used
  with <strong>mcrypt_module_close()</strong> due to multiple buffer frees.
  
  This function terminates encryption specified by the encryption descriptor (<strong>$td</strong>). Actually it
  clears all buffers, and closes all the modules used. Returns <info>false</info> on error, or <info>true</info> on success.

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


id: mcrypt_generic_init
type: function
doc:
<comment>Description:</comment>
  This function initializes all buffers needed for encryption
  
  You need to call this function before every call to <strong>mcrypt_generic()</strong> or <strong>mdecrypt_generic()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td </strong>  The encryption descriptor.
  <info>string  </info>  <strong>$key</strong>  The maximum length of the key should be the one obtained by calling
                  <strong>mcrypt_enc_get_key_size()</strong> and every value smaller than this is legal.
  <info>string  </info>  <strong>$iv </strong>  The IV should normally have the size of the algorithms block size, but you must
                  obtain the size by calling <strong>mcrypt_enc_get_iv_size()</strong>. IV is ignored in ECB. IV MUST
                  exist in CFB, CBC, STREAM, nOFB and OFB modes. It needs to be random and unique
                  (but not secret). The same IV must be used for encryption/decryption. If you do
                  not want to use it you should set it to zeros, but this is not recommended.

<comment>Return:</comment>
  <info>int</info>  The function returns a negative value on error: -3 when the key length was incorrect, -4 when
       there was a memory allocation problem and any other return value is an unknown error. If an
       error occurs a warning will be displayed accordingly. <info>false</info> is returned if incorrect
       parameters were passed.

<comment>See Also:</comment>
   * <strong>mcrypt_module_open()</strong>


id: mcrypt_get_block_size
type: function
doc:
<comment>Description:</comment>
  Gets the block size of the specified cipher
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or 2.5.x.
  
  <strong>mcrypt_get_block_size()</strong> is used to get the size of a block of the specified <strong>$cipher</strong> (in
  combination with an encryption mode).
  
  It is more useful to use the <strong>mcrypt_enc_get_block_size()</strong> function as this uses the resource
  returned by <strong>mcrypt_module_open()</strong>.

<comment>Param:</comment>
  <info>int   </info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma
                   di stringa.
  <info>string</info>  <strong>$mode  </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                   "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".

<comment>Return:</comment>
  <info>intfalse</info>  Returns the algorithm block size in bytes  o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_get_key_size()</strong>
   * <strong>mcrypt_enc_get_block_size()</strong>
   * <strong>mcrypt_encrypt()</strong>


id: mcrypt_get_cipher_name
type: function
doc:
<comment>Description:</comment>
  Gets the name of the specified cipher
  
  <strong>mcrypt_get_cipher_name()</strong> is used to get the name of the specified cipher.
  
  <strong>mcrypt_get_cipher_name()</strong> takes the cipher number as an argument (libmcrypt 2.2.x) or takes the
  cipher name as an argument (libmcrypt 2.4.x or higher) and returns the name of the cipher or
  <info>false</info>, if the cipher does not exist.

<comment>Param:</comment>
  <info>int</info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma di
                stringa.

<comment>Return:</comment>
  <info>string</info>  This function returns the name of the cipher or <info>false</info> if the cipher does not exist.


id: mcrypt_get_iv_size
type: function
doc:
<comment>Description:</comment>
  Returns the size of the IV belonging to a specific cipher/mode combination
  
  Gets the size of the IV belonging to a specific  <strong>$cipher</strong>/<strong>$mode</strong> combination.
  
  It is more useful to use the <strong>mcrypt_enc_get_iv_size()</strong> function as this uses the resource returned
  by <strong>mcrypt_module_open()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma
                   di stringa.
  <info>string</info>  <strong>$mode  </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                   "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
                   
                   The IV is ignored in ECB mode as this mode does not require it. You will need to
                   have the same IV (think: starting point) both at encryption and decryption
                   stages, otherwise your encryption will fail.

<comment>Return:</comment>
  <info>int</info>  Returns the size of the Initialization Vector (IV) in bytes. On error the function returns
       <info>false</info>. If the IV is ignored in the specified cipher/mode combination zero is returned.

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


id: mcrypt_get_key_size
type: function
doc:
<comment>Description:</comment>
  Gets the key size of the specified cipher
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or 2.5.x.
  
  <strong>mcrypt_get_key_size()</strong> is used to get the size of a key of the specified <strong>$cipher</strong> (in combination
  with an encryption mode).
  
  It is more useful to use the <strong>mcrypt_enc_get_key_size()</strong> function as this uses the resource returned
  by <strong>mcrypt_module_open()</strong>.

<comment>Param:</comment>
  <info>int   </info>  <strong>$cipher</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto forma
                   di stringa.
  <info>string</info>  <strong>$mode  </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                   "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".

<comment>Return:</comment>
  <info>intfalse</info>  Returns the maximum supported key size of the algorithm in bytes o <info>false</info> in caso di
            fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_get_block_size()</strong>
   * <strong>mcrypt_enc_get_key_size()</strong>
   * <strong>mcrypt_encrypt()</strong>


id: mcrypt_list_algorithms
type: function
doc:
<comment>Description:</comment>
  Gets an array of all supported ciphers
  
  Gets the list of all supported algorithms in the <strong>$lib_dir</strong> parameter.

<comment>Param:</comment>
  <info>string</info>  <strong>$lib_dir</strong>  Specifies the directory where all algorithms are located. If not specified, the
                    value of the <return>mcrypt.algorithms_dir</return> php.ini directive is used.

<comment>Return:</comment>
  <info>array</info>  Returns an array with all the supported algorithms.


id: mcrypt_list_modes
type: function
doc:
<comment>Description:</comment>
  Gets an array of all supported modes
  
  Gets the list of all supported modes in the <strong>$lib_dir</strong> parameter.

<comment>Param:</comment>
  <info>string</info>  <strong>$lib_dir</strong>  Specifies the directory where all modes are located. If not specified, the value
                    of the <return>mcrypt.modes_dir</return> php.ini directive is used.

<comment>Return:</comment>
  <info>array</info>  Returns an array with all the supported modes.


id: mcrypt_module_close
type: function
doc:
<comment>Description:</comment>
  Closes the mcrypt module
  
  Closes the specified encryption handle.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td</strong>  The encryption descriptor.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mcrypt_module_open()</strong>


id: mcrypt_module_get_algo_block_size
type: function
doc:
<comment>Description:</comment>
  Returns the blocksize of the specified algorithm
  
  Gets the blocksize of the specified algorithm.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm</strong>  The algorithm name.
  <info>string</info>  <strong>$lib_dir  </strong>  This optional parameter can contain the location where the mode module is on
                      the system.

<comment>Return:</comment>
  <info>int</info>  Returns the block size of the algorithm specified in bytes.


id: mcrypt_module_get_algo_key_size
type: function
doc:
<comment>Description:</comment>
  Returns the maximum supported keysize of the opened mode
  
  Gets the maximum supported keysize of the opened mode.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm</strong>  The algorithm name.
  <info>string</info>  <strong>$lib_dir  </strong>  This optional parameter can contain the location where the mode module is on
                      the system.

<comment>Return:</comment>
  <info>int</info>  This function returns the maximum supported key size of the algorithm specified in bytes.


id: mcrypt_module_get_supported_key_sizes
type: function
doc:
<comment>Description:</comment>
  Returns an array with the supported keysizes of the opened algorithm
  
  Returns an array with the key sizes supported by the specified algorithm. If it returns an empty
  array then all key sizes between 1 and <strong>mcrypt_module_get_algo_key_size()</strong> are supported by the
  algorithm.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm</strong>  The algorithm to be used.
  <info>string</info>  <strong>$lib_dir  </strong>  The optional <strong>$lib_dir</strong> parameter can contain the location where the algorithm
                      module is on the system.

<comment>Return:</comment>
  <info>array</info>  Returns an array with the key sizes supported by the specified algorithm. If it returns an
         empty array then all key sizes between 1 and <strong>mcrypt_module_get_algo_key_size()</strong> are
         supported by the algorithm.

<comment>See Also:</comment>
   * <strong>mcrypt_enc_get_supported_key_sizes()</strong>


id: mcrypt_module_is_block_algorithm
type: function
doc:
<comment>Description:</comment>
  This function checks whether the specified algorithm is a block algorithm
  
  This function returns <info>true</info> if the specified algorithm is a block algorithm, or <info>false</info> if it is a
  stream one.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm</strong>  The algorithm to check.
  <info>string</info>  <strong>$lib_dir  </strong>  The optional <strong>$lib_dir</strong> parameter can contain the location where the algorithm
                      module is on the system.

<comment>Return:</comment>
  <info>bool</info>  This function returns <info>true</info> if the specified algorithm is a block algorithm, or <info>false</info> if it
        is a stream one.


id: mcrypt_module_is_block_algorithm_mode
type: function
doc:
<comment>Description:</comment>
  Returns if the specified module is a block algorithm or not
  
  This function returns <info>true</info> if the mode is for use with block algorithms, otherwise it returns
  <info>false</info>. (e.g. <info>false</info> for stream, and <info>true</info> for cbc, cfb, ofb).

<comment>Param:</comment>
  <info>string</info>  <strong>$mode   </strong>  The mode to check.
  <info>string</info>  <strong>$lib_dir</strong>  The optional <strong>$lib_dir</strong> parameter can contain the location where the algorithm
                    module is on the system.

<comment>Return:</comment>
  <info>bool</info>  This function returns <info>true</info> if the mode is for use with block algorithms, otherwise it
        returns <info>false</info>. (e.g. <info>false</info> for stream, and <info>true</info> for cbc, cfb, ofb).


id: mcrypt_module_is_block_mode
type: function
doc:
<comment>Description:</comment>
  Returns if the specified mode outputs blocks or not
  
  This function returns <info>true</info> if the mode outputs blocks of bytes or <info>false</info> if it outputs just bytes.
  (e.g. <info>true</info> for cbc and ecb, and <info>false</info> for cfb and stream).

<comment>Param:</comment>
  <info>string</info>  <strong>$mode   </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti stringhe:
                    "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
  <info>string</info>  <strong>$lib_dir</strong>  The optional <strong>$lib_dir</strong> parameter can contain the location where the algorithm
                    module is on the system.

<comment>Return:</comment>
  <info>bool</info>  This function returns <info>true</info> if the mode outputs blocks of bytes or <info>false</info> if it outputs just
        bytes. (e.g. <info>true</info> for cbc and ecb, and <info>false</info> for cfb and stream).


id: mcrypt_module_open
type: function
doc:
<comment>Description:</comment>
  Opens the module of the algorithm and the mode to be used
  
  This function opens the module of the algorithm and the mode to be used. The name of the algorithm
  is specified in algorithm, e.g. <return>"twofish"</return> or is one of the <info>MCRYPT_ciphername</info> constants.  The
  module is closed by calling <strong>mcrypt_module_close()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm          </strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo
                                sotto forma di stringa.
  <info>string</info>  <strong>$algorithm_directory</strong>  The <strong>$algorithm_directory</strong> parameter is used to locate the encryption
                                module. When you supply a directory name, it is used.  When you set
                                it to an empty string (<return>""</return>), the value set by the
                                <return>mcrypt.algorithms_dir</return> php.ini directive is used. When it is not set,
                                the default directory that is used is the one that was compiled into
                                libmcrypt (usually /usr/local/lib/libmcrypt).
  <info>string</info>  <strong>$mode               </strong>  Una tra le costanti <info>MCRYPT_MODE_modename</info>, oppure una tra le seguenti
                                stringhe: "ecb", "cbc", "cfb", "ofb", "nofb" o "stream".
  <info>string</info>  <strong>$mode_directory     </strong>  The <strong>$mode_directory</strong> parameter is used to locate the encryption
                                module. When you supply a directory name, it is used.  When you set
                                it to an empty string (<return>""</return>), the value set by the <return>mcrypt.modes_dir</return>
                                php.ini directive is used. When it is not set, the default directory
                                that is used is the one that was compiled-in into libmcrypt (usually
                                /usr/local/lib/libmcrypt).

<comment>Return:</comment>
  <info>resource</info>  Normally it returns an encryption descriptor, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>mcrypt_module_close()</strong>
   * <strong>mcrypt_generic()</strong>
   * <strong>mdecrypt_generic()</strong>
   * <strong>mcrypt_generic_init()</strong>
   * <strong>mcrypt_generic_deinit()</strong>


id: mcrypt_module_self_test
type: function
doc:
<comment>Description:</comment>
  This function runs a self test on the specified module
  
  This function runs the self test on the algorithm specified.

<comment>Param:</comment>
  <info>string</info>  <strong>$algorithm</strong>  Una tra le costanti <info>MCRYPT_ciphername</info>, oppure il nome dell'algoritmo sotto
                      forma di stringa.
  <info>string</info>  <strong>$lib_dir  </strong>  The optional <strong>$lib_dir</strong> parameter can contain the location where the algorithm
                      module is on the system.

<comment>Return:</comment>
  <info>bool</info>  The function returns <info>true</info> if the self test succeeds, or <info>false</info> when it fails.


id: mcrypt_ofb
type: function
doc:
<comment>Description:</comment>
  Encrypts/decrypts data in OFB mode
  
  The first prototype is when linked against libmcrypt 2.2.x, the second when linked against
  libmcrypt 2.4.x or higher. The <strong>$mode</strong> should be either <info>MCRYPT_ENCRYPT</info> or <info>MCRYPT_DECRYPT</info>.

<comment>Return:</comment>
  <info>string</info>  


id: md5
type: function
doc:
<comment>Description:</comment>
  Calcola il valore md5 di una stringa
  
  Calcola il valore MD5 di <strong>$str</strong> utilizzando il RSA Data Security, Inc. MD5 Message-Digest Algorithm,
  e restituisce tale valore.

<comment>Param:</comment>
  <info>string</info>  <strong>$str       </strong>  La stringa.
  <info>bool  </info>  <strong>$raw_output</strong>  Se il parametro opzionale <strong>$raw_output</strong> è impostato a <info>true</info>, allora viene
                       restituito l'md5 digest in formato binario raw con una dimensione di 16.

<comment>Return:</comment>
  <info>string</info>  Restituisce il valore come un numero esadecimale di 32 caratteri.

<comment>See Also:</comment>
   * <strong>md5_file()</strong>
   * <strong>sha1_file()</strong>
   * <strong>crc32()</strong>
   * <strong>sha1()</strong>
   * <strong>hash()</strong>
   * <strong>crypt()</strong>
   * <strong>password_hash()</strong>


id: md5_file
type: function
doc:
<comment>Description:</comment>
  Calcola l'hash md5 del file dato
  
  Calcola l'hash MD5 del file specificato dal parametro <strong>$filename</strong> utilizzando il RSA Data Security,
  Inc.  MD5 Message-Digest Algorithm, e restituendo quell'hash. L'hash è un numero esadecimale di 32
  caratteri.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename  </strong>  Il nome del file
  <info>bool  </info>  <strong>$raw_output</strong>  Quando <info>true</info>, restituisce il digest nel formato binario raw con una dimensione
                       di 16.

<comment>Return:</comment>
  <info>string</info>  Restituisce una stringa in caso di successo, <info>false</info> in caso contrario.

<comment>See Also:</comment>
   * <strong>md5()</strong>
   * <strong>sha1_file()</strong>
   * <strong>crc32()</strong>


id: mdecrypt_generic
type: function
doc:
<comment>Description:</comment>
  Decrypts data
  
  This function decrypts data. Note that the length of the returned string can in fact be longer
  than the unencrypted string, due to the padding of the data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$td  </strong>  An encryption descriptor returned by <strong>mcrypt_module_open()</strong>
  <info>string  </info>  <strong>$data</strong>  Encrypted data.

<comment>Return:</comment>
  <info>string</info>  

<comment>See Also:</comment>
   * <strong>mcrypt_generic()</strong>
   * <strong>mcrypt_generic_init()</strong>
   * <strong>mcrypt_generic_deinit()</strong>


id: memcache_debug
type: function
doc:
<comment>Description:</comment>
  Turn debug output on/off
  
  <strong>memcache_debug()</strong> turns on debug output if parameter <strong>$on_off</strong> is equal to <info>true</info> and turns off if it's
  <info>false</info>. <strong>memcache_debug()</strong> is accessible only if PHP was built with --enable-debug option and always
  returns <info>true</info> in this case. Otherwise, this function has no effect and always returns <info>false</info>.
  
  <strong>memcache_debug()</strong> is accessible only if PHP was built with --enable-debug option and always returns
  <info>true</info> in this case. Otherwise, this function has no effect and always returns <info>false</info>.

<comment>Param:</comment>
  <info>bool</info>  <strong>$on_off</strong>  Turns debug output on if equals to <info>true</info>. Turns debug output off if equals to <info>false</info>.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if PHP was built with --enable-debug option, otherwise returns <info>false</info>.


id: memory_get_peak_usage
type: function
doc:
<comment>Description:</comment>
  Returns the peak of memory allocated by PHP
  
  Returns the peak of memory, in bytes, that's been allocated to your PHP script.

<comment>Param:</comment>
  <info>bool</info>  <strong>$real_usage</strong>  Set this to <info>true</info> to get the real size of memory allocated from system. If not
                     set or <info>false</info> only the memory used by <return>emalloc()</return> is reported.

<comment>Return:</comment>
  <info>int</info>  Returns the memory peak in bytes.

<comment>See Also:</comment>
   * <strong>memory_get_usage()</strong>
   * memory_limit


id: method_exists
type: function
doc:
<comment>Description:</comment>
  Verifica se il metodo della classe esiste
  
  Verifica se il metodo della classe esiste nell'<strong>$object</strong> dato.

<comment>Param:</comment>
  <info>mixed </info>  <strong>$object     </strong>  Un'istanza dell'oggetto o un nome della classe
  <info>string</info>  <strong>$method_name</strong>  Il nome del metodo

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> se il metodo dato da <strong>$method_name</strong> è definito per il dato <strong>$object</strong>, <info>false</info>  in
        caso contrario.

<comment>See Also:</comment>
   * <strong>function_exists()</strong>
   * <strong>is_callable()</strong>
   * <strong>class_exists()</strong>


id: mhash
type: function
doc:
<comment>Description:</comment>
  Computes hash
  
  <strong>mhash()</strong> applies a hash function specified by <strong>$algo</strong> to the <strong>$data</strong>.

<comment>Param:</comment>
  <info>int       </info>  <strong>$algo</strong>  The hash ID. One of the <info>MHASH_hashname</info> constants.
  <info>string    </info>  <strong>$data</strong>  The user input, as a string.
  <info>stringnull</info>  <strong>$key </strong>  If specified, the function will return the resulting HMAC instead. HMAC is
                     keyed hashing for message authentication, or simply a message digest that
                     depends on the specified key. Not all algorithms  supported in mhash can be
                     used in HMAC mode.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the resulting hash (also called digest) or HMAC as a string, or <info>false</info> on
               error.


id: mhash_count
type: function
doc:
<comment>Description:</comment>
  Gets the highest available hash ID
  
  Gets the highest available hash ID.

<comment>Return:</comment>
  <info>int</info>  Returns the highest available hash ID. Hashes are numbered from 0 to this hash ID.


id: mhash_get_block_size
type: function
doc:
<comment>Description:</comment>
  Gets the block size of the specified hash
  
  Gets the size of a block of the specified <strong>$algo</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$algo</strong>  The hash ID. One of the <info>MHASH_hashname</info> constants.

<comment>Return:</comment>
  <info>intfalse</info>  Returns the size in bytes or <info>false</info>, if the <strong>$algo</strong> does not exist.


id: mhash_get_hash_name
type: function
doc:
<comment>Description:</comment>
  Gets the name of the specified hash
  
  Gets the name of the specified <strong>$algo</strong>.

<comment>Param:</comment>
  <info>int</info>  <strong>$algo</strong>  The hash ID. One of the <info>MHASH_hashname</info> constants.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the name of the hash or <info>false</info>, if the hash does not exist.


id: mhash_keygen_s2k
type: function
doc:
<comment>Description:</comment>
  Generates a key
  
  Generates a key according to the given <strong>$algo</strong>, using an user provided <strong>$password</strong>.
  
  This is the Salted S2K algorithm as specified in the OpenPGP document (RFC 2440).
  
  Keep in mind that user supplied passwords are not really suitable to be used as keys in
  cryptographic algorithms, since users normally choose keys they can write on keyboard. These
  passwords use only 6 to 7 bits per character (or less). It is highly recommended to use some kind
  of transformation (like this function) to the user supplied key.

<comment>Param:</comment>
  <info>int   </info>  <strong>$algo    </strong>  The hash ID used to create the key. One of the <info>MHASH_hashname</info> constants.
  <info>string</info>  <strong>$password</strong>  An user supplied password.
  <info>string</info>  <strong>$salt    </strong>  Must be different and random enough for every key you generate in order to
                     create different keys. Because <strong>$salt</strong> must be known when you check the keys, it
                     is a good idea to append the key to it. Salt has a fixed length of 8 bytes and
                     will be padded with zeros if you supply less bytes.
  <info>int   </info>  <strong>$length  </strong>  The key length, in bytes.

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the generated key as a string, or <info>false</info> on error.


id: microtime
type: function
doc:
<comment>Description:</comment>
  Restituisce l'attuale UNIX timestamp con i microsecondi
  
  <strong>microtime()</strong> restituisce l'attuale timestamp Unix in microsecondi. Questa funzione è disponibile
  solo su sistemi operativi che supportano la chiamata di sistema gettimeofday().

<comment>Param:</comment>
  <info>bool</info>  <strong>$get_as_float</strong>  Se utilizzato e impostato a <info>true</info>, <strong>microtime()</strong> restituisce un <info>float</info> invece che
                       un <info>string</info>, come descritto nella sezione sui valori di ritorno, più sotto.

<comment>Return:</comment>
  <info>mixed</info>  Per default, <strong>microtime()</strong> restituisce una <info>string</info> in forma di "msec sec", dove <return>sec</return> è il
         numero di secondi  dalla Unix Epoch (0:00:00 January 1, 1970 GMT), e <return>msec</return>  misura i
         microsecondi che sono trascorsi da <return>sec</return>  ed è ugualmente espresso in secondi.
         
         Se <strong>$get_as_float</strong> è impostato a <info>true</info>, allora <strong>microtime()</strong> restituisce un <info>float</info>, il quale
         rappresenta l'orario attuale in microsecondi a partire dalla Unix epoch, approssimato al
         microsecondo più vicino.

<comment>See Also:</comment>
   * <strong>time()</strong>


id: mime_content_type
type: function
doc:
<comment>Description:</comment>
  Detect MIME Content-type for a file
  
  Returns the MIME content type for a file as determined by using information from the magic.mime
  file.

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

<comment>Return:</comment>
  <info>stringfalse</info>  Returns the content type in MIME format, like  <return>text/plain</return> or
               <return>application/octet-stream</return>, o <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>finfo_file()</strong>
   * <strong>finfo_buffer()</strong>


id: mkdir
type: function
doc:
<comment>Description:</comment>
  Crea una directory
  
  Tenta di creare la directory specificata da pathname.

<comment>Param:</comment>
  <info>string  </info>  <strong>$pathname </strong>  Il percorso della directory.
  <info>int     </info>  <strong>$mode     </strong>  Il parametro mode viene impostato a 0777 per default, ciò significa dare i
                        maggiori accessi possibili. Per ulteriori informazioni sui valori di mode,
                        leggere i dettagli sulla pagina di <strong>chmod()</strong>.
                        
                        <strong>$mode</strong> viene ignorato su Windows.
                        
                        Nota che probabilmente si vuole specificare mode come un ottale, per cui
                        deve iniziare con uno zero. La modalità è anche modificata dall'umask
                        corrente, che può essere cambiato usando <strong>umask()</strong>.
  <info>bool    </info>  <strong>$recursive</strong>  Consente la creazione di directory nidificate specificate in  <strong>$pathname</strong>.
  <info>resource</info>  <strong>$context  </strong>  Il supporto per il contesto è stato
                        aggiunto in PHP 5.0.0. Per la descrizione del <return>contesto</return>, fare riferimento a
                        .

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>rmdir()</strong>


id: move_uploaded_file
type: function
doc:
<comment>Description:</comment>
  Sposta un file caricato in una nuova posizione
  
  Questa funzione verifica che il file indicato da  <strong>$filename</strong> sia un file caricato correttamente
  (nel senso che è stato caricato attraverso il meccanismo di caricamento HTTP POST di PHP). Se il
  file è valido, verrà spostato nel file dato da <strong>$destination</strong>.
  
  Questo tipo di verifica è particolarmente importante se sussiste la possibilità che qualsiasi cosa
  fatta con i file caricati possa rivelarne il contenuto all'utente, o anche ad altri utenti sullo
  stesso sistema.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename   </strong>  Il nome del file caricato.
  <info>string</info>  <strong>$destination</strong>  La destinazione del file spostato.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo.
        
        Se <strong>$filename</strong> non è un file caricato valido, allora non verrà compiuta alcuna azione e
        <strong>move_uploaded_file()</strong> restituirà <info>false</info>.
        
        Se <strong>$filename</strong> è un file caricato valido, ma non può essere spostato per qualche ragione, non
        verrà compiuto alcunchè e <strong>move_uploaded_file()</strong> restituirà <info>false</info>. In più verrà emesso un
        avviso.

<comment>See Also:</comment>
   * <strong>is_uploaded_file()</strong>
   * <strong>rename()</strong>
   * Vedere Gestione dei caricamenti di file per un semplice esempio di utilizzo


id: mqseries_back
type: function
doc:
<comment>Description:</comment>
  MQSeries MQBACK
  
  The <strong>mqseries_back()</strong> (MQBACK) call indicates to the queue manager that all the message gets and
  puts that have occurred since the last syncpoint are to be backed out. Messages put as part of a
  unit of work are deleted; messages retrieved as part of a unit of work are reinstated on the
  queue.
  
  Using <strong>mqseries_back()</strong> only works in conjunction with <strong>mqseries_begin()</strong> and only function when
  connecting directly to a Queueu manager. Not via the mqclient interface.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_begin()</strong>


id: mqseries_begin
type: function
doc:
<comment>Description:</comment>
  MQseries MQBEGIN
  
  The <strong>mqseries_begin()</strong> (MQBEGIN) call begins a unit of work that is coordinated by the queue
  manager, and that may involve external resource managers.
  
  Using <strong>mqseries_begin()</strong> starts the unit of work. Either <strong>mqseries_back()</strong> or <strong>mqseries_cmit()</strong> ends the
  unit of work.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_back()</strong>
   * <strong>mqseries_cmit()</strong>


id: mqseries_close
type: function
doc:
<comment>Description:</comment>
  MQSeries MQCLOSE
  
  The <strong>mqseries_close()</strong> (MQCLOSE) call relinquishes access to an object, and is the inverse of the
  <strong>mqseries_open()</strong> (MQOPEN) call.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>        </info>  <strong>$hObj    </strong>  Object handle.
                       
                       This handle represents the object to be used.
  <info>int     </info>  <strong>$options </strong>  
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_open()</strong>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>


id: mqseries_cmit
type: function
doc:
<comment>Description:</comment>
  MQSeries MQCMIT
  
  The <strong>mqseries_cmit()</strong> (MQCMIT) call indicates to the queue manager that the application has reached
  a syncpoint, and that all of the message gets and puts that have occurred since the last syncpoint
  are to be made permanent. Messages put as part of a unit of work are made available to other
  applications; messages retrieved as part of a unit of work are deleted.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_begin()</strong>
   * <strong>mqseries_back()</strong>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>


id: mqseries_conn
type: function
doc:
<comment>Description:</comment>
  MQSeries MQCONN
  
  The <strong>mqseries_conn()</strong> (MQCONN) call connects an application program to a queue manager. It provides
  a queue manager connection handle, which is used by the application on subsequent message queuing
  calls.

<comment>Param:</comment>
  <info>string  </info>  <strong>$qManagerName</strong>  Name of queue manager.
                           
                           Name of the queue manager the application wishes to connect.
  <info>        </info>  <strong>$hConn       </strong>  Connection handle.
                           
                           This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode    </strong>  Completion code.
  <info>resource</info>  <strong>$reason      </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_disc()</strong>


id: mqseries_connx
type: function
doc:
<comment>Description:</comment>
  MQSeries MQCONNX
  
  The <strong>mqseries_connx()</strong> (MQCONNX) call connects an application program to a queue manager. It
  provides a queue manager connection handle, which is used by the application on subsequent MQ
  calls.
  
  The <strong>mqseries_connx()</strong> call is like the  <strong>mqseries_conn()</strong> (MQCONN) call, except that MQCONNX  allows
  options to be specified to control the way that the call works.

<comment>Param:</comment>
  <info>string  </info>  <strong>$qManagerName</strong>  Name of queue manager.
                           
                           Name of the queue manager the application wishes to connect.
  <info>        </info>  <strong>$connOps     </strong>  Options that control the action of function
                           
                           See also the MQCNO structure.
  <info>        </info>  <strong>$hConn       </strong>  Connection handle.
                           
                           This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode    </strong>  Completion code.
  <info>resource</info>  <strong>$reason      </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_disc()</strong>


id: mqseries_disc
type: function
doc:
<comment>Description:</comment>
  MQSeries MQDISC
  
  The <strong>mqseries_disc()</strong> (MQDISC) call breaks the connection between the queue manager and the
  application program, and is the inverse of the <strong>mqseries_conn()</strong> (MQCONN) or <strong>mqseries_connx()</strong>
  (MQCONNX) call.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>


id: mqseries_get
type: function
doc:
<comment>Description:</comment>
  MQSeries MQGET
  
  The <strong>mqseries_get()</strong> (MQGET) call retrieves a message from a local queue that has been opened using
  the <strong>mqseries_open()</strong> (MQOPEN) call

<comment>Param:</comment>
  <info>resource</info>  <strong>$hConn       </strong>  Connection handle.
                           
                           This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$hObj        </strong>  Object handle.
                           
                           This handle represents the object to be used.
  <info>array   </info>  <strong>$md          </strong>  Message descriptor (MQMD).
  <info>array   </info>  <strong>$gmo         </strong>  Get message options (MQGMO).
  <info>int     </info>  <strong>$bufferLength</strong>  Expected length of the result buffer
  <info>string  </info>  <strong>$msg         </strong>  Buffer holding the message that was retrieved from the object.
  <info>int     </info>  <strong>$data_length </strong>  Actual buffer length
  <info>resource</info>  <strong>$compCode    </strong>  Completion code.
  <info>resource</info>  <strong>$reason      </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_open()</strong>
   * <strong>mqseries_put()</strong>


id: mqseries_inq
type: function
doc:
<comment>Description:</comment>
  MQSeries MQINQ
  
  The <strong>mqseries_inq()</strong> (MQINQ) call returns an array of integers and a set of character strings
  containing the attributes of an object.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn         </strong>  Connection handle.
                             
                             This handle represents the connection to the queue manager.
  <info>        </info>  <strong>$hObj          </strong>  Object handle.
                             
                             This handle represents the object to be used.
  <info>int     </info>  <strong>$selectorCount </strong>  Count of selectors.
  <info>array   </info>  <strong>$selectors     </strong>  Array of attribute selectors.
  <info>        </info>  <strong>$intAttrLength </strong>  Count of integer attributes.
  <info>resource</info>  <strong>$intAttr       </strong>  Array of integer attributes.
  <info>int     </info>  <strong>$charAttrLength</strong>  Length of character attributes buffer.
  <info>resource</info>  <strong>$charAttr      </strong>  Character attributes.
  <info>resource</info>  <strong>$compCode      </strong>  Completion code.
  <info>resource</info>  <strong>$reason        </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_open()</strong>


id: mqseries_open
type: function
doc:
<comment>Description:</comment>
  MQSeries MQOPEN
  
  The <strong>mqseries_open()</strong> (MQOPEN) call establishes access to an object.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>array   </info>  <strong>$objDesc </strong>  Object descriptor. (MQOD)
  <info>        </info>  <strong>$options </strong>  Options that control the action of the function.
  <info>        </info>  <strong>$hObj    </strong>  Object handle.
                       
                       This handle represents the object to be used.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_close()</strong>


id: mqseries_put
type: function
doc:
<comment>Description:</comment>
  MQSeries MQPUT
  
  The <strong>mqseries_put()</strong> (MQPUT) call puts a message on a queue or distribution list. The queue or
  distribution list must already be open.

<comment>Param:</comment>
  <info>resource</info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$hObj    </strong>  Object handle.
                       
                       This handle represents the object to be used.
  <info>array   </info>  <strong>$md      </strong>  Message descriptor (MQMD).
  <info>array   </info>  <strong>$pmo     </strong>  Put message options (MQPMO).
  <info>string  </info>  <strong>$message </strong>  The actual message to put onto the queue.
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_open()</strong>
   * <strong>mqseries_get()</strong>


id: mqseries_put1
type: function
doc:
<comment>Description:</comment>
  MQSeries MQPUT1
  
  The <strong>mqseries_put1()</strong> (MQPUT1) call puts one message on a queue. The queue need not be open.
  
  You can use both the <strong>mqseries_put()</strong> and <strong>mqseries_put1()</strong> calls to put messages on a queue; which
  call to use depends on the circumstances. Use the <strong>mqseries_put()</strong> (MQPUT) call to place multiple
  messages on the same queue. Use the <strong>mqseries_put1()</strong> (MQPUT1) call to put only one message on a
  queue. This call encapsulates the MQOPEN, MQPUT, and MQCLOSE calls into a single call, minimizing
  the number of calls that must be issued.

<comment>Param:</comment>
  <info>        </info>  <strong>$hConn   </strong>  Connection handle.
                       
                       This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$objDesc </strong>  Object descriptor. (MQOD)
                       
                       This is a structure which identifies the queue to which the message is added.
  <info>resource</info>  <strong>$msgDesc </strong>  Message descriptor (MQMD).
  <info>resource</info>  <strong>$pmo     </strong>  Put message options (MQPMO).
  <info>resource</info>  <strong>$compCode</strong>  Completion code.
  <info>resource</info>  <strong>$reason  </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_conn()</strong>
   * <strong>mqseries_connx()</strong>
   * <strong>mqseries_open()</strong>
   * <strong>mqseries_get()</strong>


id: mqseries_set
type: function
doc:
<comment>Description:</comment>
  MQSeries MQSET
  
  The <strong>mqseries_set()</strong> (MQSET) call is used to change the attributes of an object represented by a
  handle. The object must be a queue.

<comment>Param:</comment>
  <info>resource</info>  <strong>$hConn         </strong>  Connection handle.
                             
                             This handle represents the connection to the queue manager.
  <info>resource</info>  <strong>$hObj          </strong>  Object handle.
                             
                             This handle represents the object to be used.
  <info>int     </info>  <strong>$selectorCount </strong>  Count of selectors.
  <info>array   </info>  <strong>$selectors     </strong>  Array of attribute selectors.
  <info>int     </info>  <strong>$intAttrCount  </strong>  Count of integer attributes.
  <info>array   </info>  <strong>$intAttrs      </strong>  Array of integer attributes.
  <info>int     </info>  <strong>$charAttrLength</strong>  Length of character attributes buffer.
  <info>array   </info>  <strong>$charAttrs     </strong>  Character attributes.
  <info>resource</info>  <strong>$compCode      </strong>  Completion code.
  <info>resource</info>  <strong>$reason        </strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>void</info>  Nessun valore viene restituito.

<comment>See Also:</comment>
   * <strong>mqseries_inq()</strong>


id: mqseries_strerror
type: function
doc:
<comment>Description:</comment>
  Returns the error message corresponding to a result code (MQRC)
  
  <strong>mqseries_strerror()</strong> returns the message that correspond to the reason result code.

<comment>Param:</comment>
  <info>int</info>  <strong>$reason</strong>  Reason code qualifying the compCode.

<comment>Return:</comment>
  <info>string</info>  string representation of the reason code message.


id: msg_queue_exists
type: function
doc:
<comment>Description:</comment>
  Check whether a message queue exists
  
  Checks whether the message queue <strong>$key</strong> exists.

<comment>Param:</comment>
  <info>int</info>  <strong>$key</strong>  Queue key.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>msg_remove_queue()</strong>
   * <strong>msg_receive()</strong>
   * <strong>msg_stat_queue()</strong>


id: msg_set_queue
type: function
doc:
<comment>Description:</comment>
  Valorizza le informazioni nella struttura dati della coda dei messaggi


id: mysql_affected_rows
type: function
doc:
<comment>Description:</comment>
  Ottiene il numero di righe coinvolte nelle precedenti
       operazioni MySQL


id: mysql_errno
type: function
doc:
<comment>Description:</comment>
  Restituisce il valore numerico del messaggio di errore della precedente
       operazione MySQL


id: mysql_error
type: function
doc:
<comment>Description:</comment>
  Restituisce il testo del messagio di errore della precedente
       operazione MySQL


id: mysql_escape_string
type: function
doc:
<comment>Description:</comment>
  Aggiunge le sequenze di escape in una stringa per l'uso in mysql_query.


id: mysql_fetch_array
type: function
doc:
<comment>Description:</comment>
  Carica una riga del risultato come un array associativo, un array numerico o entrambi.


id: mysql_fetch_field
type: function
doc:
<comment>Description:</comment>
  Ottiene informazioni sulla colonna da un risultato e le restituisce come oggetto


id: mysql_field_seek
type: function
doc:
<comment>Description:</comment>
  Imposta il puntatore al risultato ad un determinato indice di campo


id: mysql_field_table
type: function
doc:
<comment>Description:</comment>
  Ottiene il nome della tabella in cui si trova il campo specificato


id: mysql_insert_id
type: function
doc:
<comment>Description:</comment>
  Ottiene l'identificativo generato dalla precedente operazione INSERT


id: mysql_ping
type: function
doc:
<comment>Description:</comment>
  Esegue un ping su una connessione al server o riconnette se non non esiste la connessione


id: mysql_real_escape_string
type: function
doc:
<comment>Description:</comment>
  Aggiunge le sequenze di escape ai caratteri speciali in una stringa per l'uso in una istruzione
  SQL, tenendo conto dell'attuale set di caratteri della connessione.


id: mysql_set_charset
type: function
doc:
<comment>Description:</comment>
  Imposta il set di caratteri del client
  
  Consente di impostare il set di caratteri di default per la connessione corrente.

<comment>Param:</comment>
  <info>string</info>  <strong>$charset        </strong>  Un valido nome di set di caratteri.
  <info>      </info>  <strong>$link_identifier</strong>  La connessione MySQL. Se 
                            l'identificativo di connessione non è specificato, l'ultima connessione
                            aperta da
                            <strong>mysql_connect()</strong> viene assunta. Se questa connessione non è trovata, si
                            cercherà di crearne una come se <strong>mysql_connect()</strong> fosse stata chiamata
                            senza argomenti. Se una connessione non è trovata oppure non viene
                            stabilita, un
                            avviso di livello <info>E_WARNING</info> viene generato.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * Impostare i set di caratteri in MYSQL
   * Lista dei set di caratteri supportati da MySQL
   * <strong>mysql_client_encoding()</strong>


id: mysql_unbuffered_query
type: function
doc:
<comment>Description:</comment>
  Invia una query SQL a MySQL senza caricare e bufferare le
       righe risultanti


id: mysql_xdevapi\Client::close
type: function
doc:
<comment>Description:</comment>
  Close client
  
  Close all client connections with the server.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if connections are closed.


id: mysql_xdevapi\Table
type: class
doc:
<comment>Description:</comment>
  Provides access to the table through INSERT/SELECT/UPDATE/DELETE statements.


id: mysqli::__construct
type: function
doc:
<comment>Description:</comment>
  Open a new connection to the MySQL server
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Opens a connection to the MySQL Server.

<comment>Param:</comment>
  <info>string</info>  <strong>$host    </strong>  Can be either a host name or an IP address. Passing the <info>null</info> value or the
                     string "localhost" to this parameter, the local host is assumed. When possible,
                     pipes will be used instead of the TCP/IP protocol.
                     
                     Prepending host by <return>p:</return> opens a persistent connection. <strong>mysqli_change_user()</strong> is
                     automatically called on connections opened from the connection pool.
  <info>string</info>  <strong>$username</strong>  The MySQL user name.
  <info>string</info>  <strong>$passwd  </strong>  If not provided or <info>null</info>, the MySQL server will attempt to authenticate the user
                     against those user records which have no password only. This allows one
                     username to be used with different permissions (depending on if a password is
                     provided or not).
  <info>string</info>  <strong>$dbname  </strong>  If provided will specify the default database to be used when performing
                     queries.
  <info>int   </info>  <strong>$port    </strong>  Specifies the port number to attempt to connect to the MySQL server.
  <info>string</info>  <strong>$socket  </strong>  Specifies the socket or named pipe that should be used.
                     
                     Specifying the <strong>$socket</strong> parameter will not explicitly determine the type of
                     connection to be used when connecting to the MySQL server. How the connection
                     is made to the MySQL database is determined by the <strong>$host</strong> parameter.

<comment>Return:</comment>
  <info>void</info>  Returns an object which represents the connection to a MySQL Server, o <info>false</info> in caso di
        fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_real_connect()</strong>
   * <strong>mysqli_options()</strong>
   * <strong>mysqli_connect_errno()</strong>
   * <strong>mysqli_connect_error()</strong>
   * <strong>mysqli_close()</strong>


id: mysqli::autocommit
type: function
doc:
<comment>Description:</comment>
  Turns on or off auto-committing database modifications
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Turns on or off auto-commit mode on queries for the database connection.
  
  To determine the current state of autocommit use the SQL command <return>SELECT @@autocommit</return>.

<comment>Param:</comment>
  <info>    </info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
               restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>bool</info>  <strong>$mode</strong>  Whether to turn on auto-commit or not.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_begin_transaction()</strong>
   * <strong>mysqli_commit()</strong>
   * <strong>mysqli_rollback()</strong>


id: mysqli::begin_transaction
type: function
doc:
<comment>Description:</comment>
  Starts a transaction
  
  Stile orientato agli oggetti
  
  Stile procedurale:
  
  Begins a transaction. Requires the InnoDB  engine (it is enabled by default). For additional
  details about how MySQL transactions work, see http://dev.mysql.com/doc/mysql/en/commit.html.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int   </info>  <strong>$flags</strong>  Valid flags are:
                  
                  <info>MYSQLI_TRANS_START_READ_ONLY</info>:  Start the transaction as "START TRANSACTION READ
                  ONLY". Requires MySQL 5.6 and above.
                  
                  <info>MYSQLI_TRANS_START_READ_WRITE</info>:  Start the transaction as "START TRANSACTION READ
                  WRITE". Requires MySQL 5.6 and above.
                  
                  <info>MYSQLI_TRANS_START_WITH_CONSISTENT_SNAPSHOT</info>:  Start the transaction as "START
                  TRANSACTION WITH CONSISTENT SNAPSHOT".
  <info>string</info>  <strong>$name </strong>  Savepoint name for the transaction.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_autocommit()</strong>
   * <strong>mysqli_commit()</strong>
   * <strong>mysqli_rollback()</strong>


id: mysqli::change_user
type: function
doc:
<comment>Description:</comment>
  Changes the user of the specified database connection
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Changes the user of the specified database connection and sets the current database.
  
  In order to successfully change users a valid <strong>$username</strong> and <strong>$password</strong> parameters must be provided
  and that user must have sufficient permissions to access the desired database. If for any reason
  authorization fails, the current user authentication will remain.

<comment>Param:</comment>
  <info>      </info>  <strong>$link    </strong>  Solo nello stile procedurale: un identificatore
                     restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$user    </strong>  The MySQL user name.
  <info>string</info>  <strong>$password</strong>  The MySQL password.
  <info>string</info>  <strong>$database</strong>  The database to change to.
                     
                     If desired, the <info>null</info> value may be passed resulting in only changing the user
                     and not selecting a database. To select a database in this case use the
                     <strong>mysqli_select_db()</strong> function.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_connect()</strong>
   * <strong>mysqli_select_db()</strong>


id: mysqli::character_set_name
type: function
doc:
<comment>Description:</comment>
  Returns the default character set for the database connection
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Returns the current character set for the database connection.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>string</info>  The default character set for the current connection

<comment>See Also:</comment>
   * <strong>mysqli_set_charset()</strong>
   * <strong>mysqli_client_encoding()</strong>
   * <strong>mysqli_real_escape_string()</strong>


id: mysqli::close
type: function
doc:
<comment>Description:</comment>
  Closes a previously opened database connection
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Closes a previously opened database connection.
  
  Open non-persistent MySQL connections and result sets are automatically destroyed when a 
  PHP script finishes its execution. So, while explicitly closing open 
  connections and freeing result sets is optional, doing so is recommended. 
  This will immediately return resources to PHP and MySQL, which can 
  improve performance. For related information, see 
  freeing resources

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * mysqli::__construct
   * <strong>mysqli_init()</strong>
   * <strong>mysqli_real_connect()</strong>
   * <strong>mysqli_free_result()</strong>


id: mysqli::commit
type: function
doc:
<comment>Description:</comment>
  Commits the current transaction
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Commits the current transaction for the database connection.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int   </info>  <strong>$flags</strong>  A bitmask of <info>MYSQLI_TRANS_COR_*</info> constants.
  <info>string</info>  <strong>$name </strong>  If provided then <return>COMMIT/*name*/</return> is executed.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_autocommit()</strong>
   * <strong>mysqli_begin_transaction()</strong>
   * <strong>mysqli_rollback()</strong>
   * <strong>mysqli_savepoint()</strong>


id: mysqli::debug
type: function
doc:
<comment>Description:</comment>
  Performs debugging operations
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Performs debugging operations using the Fred Fish debugging library.

<comment>Param:</comment>
  <info>string</info>  <strong>$message</strong>  A string representing the debugging operation to perform

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

<comment>See Also:</comment>
   * <strong>mysqli_dump_debug_info()</strong>
   * <strong>mysqli_report()</strong>


id: mysqli::dump_debug_info
type: function
doc:
<comment>Description:</comment>
  Dump debugging information into the log
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  This function is designed to be executed by an user with the SUPER privilege and is used to dump
  debugging information into the log for the MySQL Server relating to the connection.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_debug()</strong>


id: mysqli::escape_string
type: function
doc:
<comment>Description:</comment>
  Escapes special characters in a string for use in an SQL statement, taking into account the
  current
  charset of the connection
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  This function is used to create a legal SQL string that you can use in an SQL statement. The given
  string is encoded to an escaped SQL string, taking into account the current character set of the
  connection.
  
  The character set must be set either at the server level, or with the API function
  <strong>mysqli_set_charset()</strong> for it to affect <strong>mysqli_real_escape_string()</strong>. See the concepts section on
  character sets for more information.

<comment>Param:</comment>
  <info>      </info>  <strong>$link     </strong>  Solo nello stile procedurale: un identificatore
                      restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$escapestr</strong>  The string to be escaped.
                      
                      Characters encoded are <return>NUL (ASCII 0), \n, \r, \, ', ", and Control-Z</return>.

<comment>Return:</comment>
  <info>string</info>  Returns an escaped string.

<comment>See Also:</comment>
   * <strong>mysqli_set_charset()</strong>
   * <strong>mysqli_character_set_name()</strong>


id: mysqli::get_charset
type: function
doc:
<comment>Description:</comment>
  Returns a character set object
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Returns a character set object providing several properties  of the current active character set.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>object</info>  The function returns a character set object with the following properties:
          <strong>$charset</strong>Character set name<strong>$collation</strong>Collation name<strong>$dir</strong>Directory the charset description
          was fetched from (?) or "" for built-in character sets<strong>$min_length</strong>Minimum character length
          in bytes<strong>$max_length</strong>Maximum character length in bytes<strong>$number</strong>Internal character set
          number<strong>$state</strong>Character set status (?)
          
          Character set name
          
          Collation name
          
          Directory the charset description was fetched from (?) or "" for built-in character sets
          
          Minimum character length in bytes
          
          Maximum character length in bytes
          
          Internal character set number
          
          Character set status (?)

<comment>See Also:</comment>
   * <strong>mysqli_character_set_name()</strong>
   * <strong>mysqli_set_charset()</strong>


id: mysqli::get_client_info
type: function
doc:
<comment>Description:</comment>
  Get MySQL client info
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Returns a string that represents the MySQL client library version.

<comment>Return:</comment>
  <info>string</info>  A string that represents the MySQL client library version

<comment>See Also:</comment>
   * <strong>mysqli_get_client_version()</strong>
   * <strong>mysqli_get_server_info()</strong>
   * <strong>mysqli_get_server_version()</strong>


id: mysqli::get_connection_stats
type: function
doc:
<comment>Description:</comment>
  Returns statistics about the client connection
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Returns statistics about the client connection. Disponibile solo con mysqlnd.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Returns an array with connection stats if success, <info>false</info> otherwise.

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


id: mysqli::get_server_info
type: function
doc:
<comment>Description:</comment>
  Returns the version of the MySQL server
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Returns a string representing the version of the MySQL server that the MySQLi extension is
  connected to.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>string</info>  A character string representing the server version.

<comment>See Also:</comment>
   * <strong>mysqli_get_client_info()</strong>
   * <strong>mysqli_get_client_version()</strong>
   * <strong>mysqli_get_server_version()</strong>


id: mysqli::get_warnings
type: function
doc:
<comment>Description:</comment>
  Get result of SHOW WARNINGS
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Questa funzione, al momento
  non è documentata; è disponibile soltanto la lista degli argomenti.

<comment>Return:</comment>
  <info>mysqli_warning</info>  


id: mysqli::init
type: function
doc:
<comment>Description:</comment>
  Initializes MySQLi and returns an object for use with mysqli_real_connect()
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Allocates or initializes a MYSQL object suitable for <strong>mysqli_options()</strong> and <strong>mysqli_real_connect()</strong>.
  
  Any subsequent calls to any mysqli function (except <strong>mysqli_options()</strong>) will fail until
  <strong>mysqli_real_connect()</strong> was called.

<comment>Return:</comment>
  <info>mysqli</info>  Returns an object.

<comment>See Also:</comment>
   * <strong>mysqli_options()</strong>
   * <strong>mysqli_close()</strong>
   * <strong>mysqli_real_connect()</strong>
   * <strong>mysqli_connect()</strong>


id: mysqli::kill
type: function
doc:
<comment>Description:</comment>
  Asks the server to kill a MySQL thread
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  This function is used to ask the server to kill a MySQL thread specified by the <strong>$processid</strong>
  parameter. This value must be retrieved by calling the <strong>mysqli_thread_id()</strong> function.
  
  To stop a running query you should use the SQL command <return>KILL QUERY processid</return>.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_thread_id()</strong>


id: mysqli::more_results
type: function
doc:
<comment>Description:</comment>
  Check if there are any more query results from a multi query
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Indicates if one or more result sets are available from a previous call to <strong>mysqli_multi_query()</strong>.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if one or more result sets (including errors) are available from a previous
        call to <strong>mysqli_multi_query()</strong>, otherwise <info>false</info>.

<comment>See Also:</comment>
   * <strong>mysqli_multi_query()</strong>
   * <strong>mysqli_next_result()</strong>
   * <strong>mysqli_store_result()</strong>
   * <strong>mysqli_use_result()</strong>


id: mysqli::multi_query
type: function
doc:
<comment>Description:</comment>
  Performs a query on the database
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Executes one or multiple queries which are concatenated by a semicolon.
  
  To retrieve the resultset from the first query you can use <strong>mysqli_use_result()</strong> or
  <strong>mysqli_store_result()</strong>. All subsequent query results can be processed using <strong>mysqli_more_results()</strong>
  and <strong>mysqli_next_result()</strong>.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$query</strong>  The query, as a string.
                  
                  Data inside the query should be properly escaped.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>false</info> if the first statement failed. To retrieve subsequent errors from other
        statements you have to call <strong>mysqli_next_result()</strong> first.

<comment>See Also:</comment>
   * <strong>mysqli_query()</strong>
   * <strong>mysqli_use_result()</strong>
   * <strong>mysqli_store_result()</strong>
   * <strong>mysqli_next_result()</strong>
   * <strong>mysqli_more_results()</strong>


id: mysqli::next_result
type: function
doc:
<comment>Description:</comment>
  Prepare next result from multi_query
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Prepares next result set from a previous call to  <strong>mysqli_multi_query()</strong> which can be retrieved by
  <strong>mysqli_store_result()</strong> or <strong>mysqli_use_result()</strong>.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento. Also returns <info>false</info> if the
        next statement resulted in an error, unlike mysqli_more_results.

<comment>See Also:</comment>
   * <strong>mysqli_multi_query()</strong>
   * <strong>mysqli_more_results()</strong>
   * <strong>mysqli_store_result()</strong>
   * <strong>mysqli_use_result()</strong>


id: mysqli::options
type: function
doc:
<comment>Description:</comment>
  Set options
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Used to set extra connect options and affect behavior for a connection.
  
  This function may be called multiple times to set several options.
  
  <strong>mysqli_options()</strong> should be called after <strong>mysqli_init()</strong> and before <strong>mysqli_real_connect()</strong>.

<comment>Param:</comment>
  <info>     </info>  <strong>$link  </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int  </info>  <strong>$option</strong>  The option that you want to set. It can be one of the following values: Valid
                  optionsNameDescription<info>MYSQLI_OPT_CONNECT_TIMEOUT</info>Connection timeout in
                  seconds<info>MYSQLI_OPT_READ_TIMEOUT</info>Command execution result timeout in seconds.
                  Available as of PHP 7.2.0.<info>MYSQLI_OPT_LOCAL_INFILE</info>Enable/disable use of <return>LOAD LOCAL
                  INFILE</return><info>MYSQLI_INIT_COMMAND</info>Command to execute after when connecting to MySQL
                  server<info>MYSQLI_SET_CHARSET_NAME</info>The charset to be set as
                  default.<info>MYSQLI_READ_DEFAULT_FILE</info> Read options from named option file instead of
                  my.cnf Not supported by mysqlnd. <info>MYSQLI_READ_DEFAULT_GROUP</info> Read options from the
                  named group from my.cnf or the file specified with <info>MYSQL_READ_DEFAULT_FILE</info>. Not
                  supported by mysqlnd. <info>MYSQLI_SERVER_PUBLIC_KEY</info> RSA public key file used with the
                  SHA-256 based authentication. <info>MYSQLI_OPT_NET_CMD_BUFFER_SIZE</info> The size of the
                  internal command/network buffer. Only valid for mysqlnd.
                  <info>MYSQLI_OPT_NET_READ_BUFFER_SIZE</info> Maximum read chunk size in bytes when reading the
                  body of a MySQL command packet. Only valid for mysqlnd.
                  <info>MYSQLI_OPT_INT_AND_FLOAT_NATIVE</info> Convert integer and float columns back to PHP
                  numbers. Only valid for mysqlnd. <info>MYSQLI_OPT_SSL_VERIFY_SERVER_CERT</info> Whether to
                  verify server certificate or not.
  <info>mixed</info>  <strong>$value </strong>  The value for the option.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_init()</strong>
   * <strong>mysqli_real_connect()</strong>


id: mysqli::ping
type: function
doc:
<comment>Description:</comment>
  Pings a server connection, or tries to reconnect if the connection has gone down
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Checks whether the connection to the server is working. If it has gone down and global option
  mysqli.reconnect is enabled, an automatic reconnection is attempted.
  
  The php.ini setting mysqli.reconnect is ignored by the mysqlnd driver, so automatic reconnection
  is never attempted.
  
  This function can be used by clients that remain idle for a long while, to check whether the
  server has closed the connection and reconnect if necessary.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.


id: mysqli::poll
type: function
doc:
<comment>Description:</comment>
  Poll connections
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Poll connections. Disponibile solo con mysqlnd. The method can be used as static.

<comment>Param:</comment>
  <info>array</info>  <strong>$read  </strong>  List of connections to check for outstanding results that can be read.
  <info>array</info>  <strong>$error </strong>  List of connections on which an error occurred, for example, query failure or lost
                  connection.
  <info>array</info>  <strong>$reject</strong>  List of connections rejected because no asynchronous query has been run on for
                  which the function could poll results.
  <info>int  </info>  <strong>$sec   </strong>  Maximum number of seconds to wait, must be non-negative.
  <info>int  </info>  <strong>$usec  </strong>  Maximum number of microseconds to wait, must be non-negative.

<comment>Return:</comment>
  <info>int</info>  Returns number of ready connections upon success, <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>mysqli_query()</strong>
   * <strong>mysqli_reap_async_query()</strong>


id: mysqli::prepare
type: function
doc:
<comment>Description:</comment>
  Prepare an SQL statement for execution
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Prepares the SQL query, and returns a statement handle to be used for further operations on the
  statement. The query must consist of a single SQL statement.
  
  The parameter markers must be bound to application variables using <strong>mysqli_stmt_bind_param()</strong> and/or
  <strong>mysqli_stmt_bind_result()</strong> before executing the statement or fetching rows.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$query</strong>  The query, as a string.
                  
                  You should not add a terminating semicolon or <return>\g</return> to the statement.
                  
                  This parameter can include one or more parameter markers in the SQL statement by
                  embedding question mark (<return>?</return>) characters at the appropriate positions.
                  
                  The markers are legal only in certain places in SQL statements. For example, they
                  are allowed in the <return>VALUES()</return> list of an <return>INSERT</return> statement (to specify column values
                  for a row), or in a comparison with a column in a <return>WHERE</return> clause to specify a
                  comparison value.
                  
                  However, they are not allowed for identifiers (such as table or column names), in
                  the select list that names the columns to be returned by a <return>SELECT</return> statement, or to
                  specify both operands of a binary operator such as the <return>=</return> equal sign. The latter
                  restriction is necessary because it would be impossible to determine the parameter
                  type. It's not allowed to compare marker with <return>NULL</return> by  <return>? IS NULL</return> too. In general,
                  parameters are legal only in Data Manipulation Language (DML) statements, and not
                  in Data Definition Language (DDL) statements.

<comment>Return:</comment>
  <info>mysqli_stmt</info>  <strong>mysqli_prepare()</strong> returns a statement object or <info>false</info> if an error occurred.

<comment>See Also:</comment>
   * <strong>mysqli_stmt_execute()</strong>
   * <strong>mysqli_stmt_fetch()</strong>
   * <strong>mysqli_stmt_bind_param()</strong>
   * <strong>mysqli_stmt_bind_result()</strong>
   * <strong>mysqli_stmt_close()</strong>


id: mysqli::query
type: function
doc:
<comment>Description:</comment>
  Performs a query on the database
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Performs a <strong>$query</strong> against the database.
  
  For non-DML queries (not INSERT, UPDATE or DELETE), this function is similar to calling
  <strong>mysqli_real_query()</strong> followed by either <strong>mysqli_use_result()</strong> or  <strong>mysqli_store_result()</strong>.
  
  In the case where you pass a statement to <strong>mysqli_query()</strong> that is longer than <return>max_allowed_packet</return> of
  the server, the returned error codes are different depending on whether you are using MySQL Native
  Driver (<return>mysqlnd</return>) or MySQL Client Library (<return>libmysqlclient</return>). The behavior is as follows:
  
  <return>mysqlnd</return> on Linux returns an error code of 1153. The error message means got a packet bigger than
  <return>max_allowed_packet</return> bytes.
  
  <return>mysqlnd</return> on Windows returns an error code 2006. This error message means server has gone away.
  
  <return>libmysqlclient</return> on all platforms returns an error code 2006. This error message means server has
  gone away.

<comment>Param:</comment>
  <info>      </info>  <strong>$link      </strong>  Solo nello stile procedurale: un identificatore
                       restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$query     </strong>  The query string.
                       
                       Data inside the query should be properly escaped.
  <info>int   </info>  <strong>$resultmode</strong>  Either the constant <info>MYSQLI_USE_RESULT</info> or <info>MYSQLI_STORE_RESULT</info> depending on the
                       desired behavior. By default, <info>MYSQLI_STORE_RESULT</info> is used.
                       
                       If you use <info>MYSQLI_USE_RESULT</info> all subsequent calls will return error <return>Commands
                       out of sync</return> unless you call <strong>mysqli_free_result()</strong>
                       
                       With <info>MYSQLI_ASYNC</info> (available with mysqlnd), it is possible to perform query
                       asynchronously. <strong>mysqli_poll()</strong> is then used to get results from such queries.

<comment>Return:</comment>
  <info>mixed</info>  Returns <info>false</info> on failure. For successful <return>SELECT, SHOW, DESCRIBE</return> or <return>EXPLAIN</return> queries
         <strong>mysqli_query()</strong> will return a <class>mysqli_result</class> object. For other successful queries
         <strong>mysqli_query()</strong> will return <info>true</info>.

<comment>See Also:</comment>
   * <strong>mysqli_real_query()</strong>
   * <strong>mysqli_multi_query()</strong>
   * <strong>mysqli_free_result()</strong>


id: mysqli::real_connect
type: function
doc:
<comment>Description:</comment>
  Opens a connection to a mysql server
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Establish a connection to a MySQL database engine.
  
  This function differs from <strong>mysqli_connect()</strong>:
  
  <strong>mysqli_real_connect()</strong> needs a valid object which has to be created by function <strong>mysqli_init()</strong>.
  
  With the <strong>mysqli_options()</strong> function you can set various options for connection.
  
  There is a <strong>$flags</strong> parameter.

<comment>Param:</comment>
  <info>      </info>  <strong>$link    </strong>  Solo nello stile procedurale: un identificatore
                     restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$host    </strong>  Can be either a host name or an IP address. Passing the <info>null</info> value or the
                     string "localhost" to this parameter, the local host is assumed. When possible,
                     pipes will be used instead of the TCP/IP protocol.
  <info>string</info>  <strong>$username</strong>  The MySQL user name.
  <info>string</info>  <strong>$passwd  </strong>  If provided or <info>null</info>, the MySQL server will attempt to authenticate the user
                     against those user records which have no password only. This allows one
                     username to be used with different permissions (depending on if a password as
                     provided or not).
  <info>string</info>  <strong>$dbname  </strong>  If provided will specify the default database to be used when performing
                     queries.
  <info>int   </info>  <strong>$port    </strong>  Specifies the port number to attempt to connect to the MySQL server.
  <info>string</info>  <strong>$socket  </strong>  Specifies the socket or named pipe that should be used.
                     
                     Specifying the <strong>$socket</strong> parameter will not explicitly determine the type of
                     connection to be used when connecting to the MySQL server. How the connection
                     is made to the MySQL database is determined by the <strong>$host</strong> parameter.
  <info>int   </info>  <strong>$flags   </strong>  With the parameter <strong>$flags</strong> you can set different connection options:
                     
                     For security reasons the <info>MULTI_STATEMENT</info> flag is not supported in PHP. If you
                     want to execute multiple queries use the <strong>mysqli_multi_query()</strong> function.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_connect()</strong>
   * <strong>mysqli_init()</strong>
   * <strong>mysqli_options()</strong>
   * <strong>mysqli_ssl_set()</strong>
   * <strong>mysqli_close()</strong>


id: mysqli::real_query
type: function
doc:
<comment>Description:</comment>
  Execute an SQL query
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Executes a single query against the database whose result can then be retrieved or stored using
  the <strong>mysqli_store_result()</strong> or <strong>mysqli_use_result()</strong> functions.
  
  In order to determine if a given query should return a result set or not, see
  <strong>mysqli_field_count()</strong>.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$query</strong>  The query, as a string.
                  
                  Data inside the query should be properly escaped.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_query()</strong>
   * <strong>mysqli_store_result()</strong>
   * <strong>mysqli_use_result()</strong>


id: mysqli::reap_async_query
type: function
doc:
<comment>Description:</comment>
  Get result from async query
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Get result from async query. Disponibile solo con mysqlnd.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>mysqli_result</info>  Returns <class>mysqli_result</class> in success, <info>false</info> otherwise.

<comment>See Also:</comment>
   * <strong>mysqli_poll()</strong>


id: mysqli::refresh
type: function
doc:
<comment>Description:</comment>
  Refreshes
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Flushes tables or caches, or resets the replication server information.

<comment>Param:</comment>
  <info>   </info>  <strong>$link   </strong>  Solo nello stile procedurale: un identificatore
                 restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int</info>  <strong>$options</strong>  The options to refresh, using the MYSQLI_REFRESH_* constants as documented within
                 the MySQLi constants documentation.
                 
                 See also the official MySQL Refresh documentation.

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if the refresh was a success, otherwise <info>false</info>

<comment>See Also:</comment>
   * <strong>mysqli_poll()</strong>


id: mysqli::release_savepoint
type: function
doc:
<comment>Description:</comment>
  Removes the named savepoint from the set of savepoints of the current transaction
  
  Stile orientato agli oggetti
  
  Stile procedurale:
  
  This function is identical to executing $mysqli-&gt;query("RELEASE SAVEPOINT `$name`");. This
  function does not trigger commit or rollback.

<comment>Param:</comment>
  <info>      </info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
                 restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$name</strong>  The identifier of the savepoint.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_savepoint()</strong>


id: mysqli::rollback
type: function
doc:
<comment>Description:</comment>
  Rolls back current transaction
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Rollbacks the current transaction for the database.

<comment>Param:</comment>
  <info>      </info>  <strong>$link </strong>  Solo nello stile procedurale: un identificatore
                  restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int   </info>  <strong>$flags</strong>  A bitmask of <info>MYSQLI_TRANS_COR_*</info> constants.
  <info>string</info>  <strong>$name </strong>  If provided then <return>ROLLBACK/*name*/</return> is executed.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_begin_transaction()</strong>
   * <strong>mysqli_commit()</strong>
   * <strong>mysqli_autocommit()</strong>
   * <strong>mysqli_release_savepoint()</strong>


id: mysqli::savepoint
type: function
doc:
<comment>Description:</comment>
  Set a named transaction savepoint
  
  Stile orientato agli oggetti
  
  Stile procedurale:
  
  This function is identical to executing $mysqli-&gt;query("SAVEPOINT `$name`");

<comment>Param:</comment>
  <info>      </info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
                 restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$name</strong>  The identifier of the savepoint.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_release_savepoint()</strong>


id: mysqli::select_db
type: function
doc:
<comment>Description:</comment>
  Selects the default database for database queries
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Selects the default database to be used when performing queries against the database connection.
  
  This function should only be used to change the default database for the connection. You can
  select the default database with 4th parameter in  <strong>mysqli_connect()</strong>.

<comment>Param:</comment>
  <info>      </info>  <strong>$link  </strong>  Solo nello stile procedurale: un identificatore
                   restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$dbname</strong>  The database name.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_connect()</strong>
   * <strong>mysqli_real_connect()</strong>


id: mysqli::set_charset
type: function
doc:
<comment>Description:</comment>
  Sets the default client character set
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Sets the default character set to be used when sending data from and to the database server.

<comment>Param:</comment>
  <info>      </info>  <strong>$link   </strong>  Solo nello stile procedurale: un identificatore
                    restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$charset</strong>  The charset to be set as default.

<comment>Return:</comment>
  <info>bool</info>  Restituisce <info>true</info> in caso di successo, <info>false</info> in caso di fallimento.

<comment>See Also:</comment>
   * <strong>mysqli_character_set_name()</strong>
   * <strong>mysqli_real_escape_string()</strong>
   * MySQL character set concepts
   * List of character sets that MySQL supports


id: mysqli::set_opt
type: function
doc:
<comment>Description:</comment>
  Alias of mysqli_options
  
  Questa funzione è sinonimo di:  <strong>mysqli_options()</strong>.


id: mysqli::ssl_set
type: function
doc:
<comment>Description:</comment>
  Used for establishing secure connections using SSL
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Used for establishing secure connections using SSL. It must be called before
  <strong>mysqli_real_connect()</strong>. This function does nothing unless OpenSSL support is enabled.
  
  Note that MySQL Native Driver does not support SSL before PHP 5.3.3,  so calling this function
  when using MySQL Native Driver will result  in an error. MySQL Native Driver is enabled by default
  on Microsoft  Windows from PHP version 5.3 onwards.

<comment>Param:</comment>
  <info>      </info>  <strong>$link  </strong>  Solo nello stile procedurale: un identificatore
                   restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>string</info>  <strong>$key   </strong>  The path name to the key file.
  <info>string</info>  <strong>$cert  </strong>  The path name to the certificate file.
  <info>string</info>  <strong>$ca    </strong>  The path name to the certificate authority file.
  <info>string</info>  <strong>$capath</strong>  The pathname to a directory that contains trusted SSL CA certificates in PEM
                   format.
  <info>string</info>  <strong>$cipher</strong>  A list of allowable ciphers to use for SSL encryption.

<comment>Return:</comment>
  <info>bool</info>  This function always returns <info>true</info> value. If SSL setup is incorrect <strong>mysqli_real_connect()</strong>
        will return an error when you attempt to connect.

<comment>See Also:</comment>
   * <strong>mysqli_options()</strong>
   * <strong>mysqli_real_connect()</strong>


id: mysqli::stat
type: function
doc:
<comment>Description:</comment>
  Gets the current system status
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  <strong>mysqli_stat()</strong> returns a string containing information similar to that provided by the 'mysqladmin
  status' command. This includes uptime in seconds and the number of running threads, questions,
  reloads, and open tables.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>string</info>  A string describing the server status. <info>false</info> if an error occurred.

<comment>See Also:</comment>
   * <strong>mysqli_get_server_info()</strong>


id: mysqli::stmt_init
type: function
doc:
<comment>Description:</comment>
  Initializes a statement and returns an object for use with mysqli_stmt_prepare
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Allocates and initializes a statement object suitable for <strong>mysqli_stmt_prepare()</strong>.
  
  Any subsequent calls to any mysqli_stmt function will fail until <strong>mysqli_stmt_prepare()</strong> was called.

<comment>Param:</comment>
  <info></info>  <strong>$link</strong>  Solo nello stile procedurale: un identificatore
           restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>

<comment>Return:</comment>
  <info>mysqli_stmt</info>  Returns an object.

<comment>See Also:</comment>
   * <strong>mysqli_stmt_prepare()</strong>


id: mysqli::store_result
type: function
doc:
<comment>Description:</comment>
  Transfers a result set from the last query
  
  Stile orientato agli oggetti
  
  Stile procedurale
  
  Transfers the result set from the last query on the database connection represented by the <strong>$link</strong>
  parameter to be used with the <strong>mysqli_data_seek()</strong> function.

<comment>Param:</comment>
  <info>   </info>  <strong>$link  </strong>  Solo nello stile procedurale: un identificatore
                restituito da <strong>mysqli_connect()</strong> o <strong>mysqli_init()</strong>
  <info>int</info>  <strong>$option</strong>  The option that you want to set. It can be one of the following values: Valid
                optionsNameDescription<info>MYSQLI_STORE_RESULT_COPY_DATA</info>Copy results from the internal
                mysqlnd buffer into the PHP variables fetched. By default, mysqlnd will use a
                reference logic to avoid copying and duplicating results held in memory. For certain
                result sets, for example, result sets with many small rows, the copy approach can
                reduce the overall memory usage because PHP variables holding results may be
                released earlier (available with mysqlnd only, since PHP 5.6.0)

<comment>Return:</comment>
  <info>mysqli_result</info>  Returns a buffered result object or <info>false</info> if an error occurred.
                 
                 <strong>mysqli_store_result()</strong> returns <info>false</info> in case the query didn't return a result set
                 (if the query was, for example an INSERT statement). This function also returns
                 <info>false</info> if the reading of the result set failed. You can check if you have got an
                 error by checking if <strong>mysqli_error()</strong> doesn't return an empty string, if
                 <strong>mysqli_errno()</strong> returns a non zero value, or if <strong>mysqli_field_count()</strong> returns a non
                 zero value. Also possible reason for this function returning <info>false</info> after successful
                 call to <strong>mysqli_query()</strong> can be too large result set (memory for it cannot be
                 allocated). If <strong>mysqli_field_count()</strong> returns a non-zero value, the statement should
                 have produced a non-empty result set.

<comment>See Also:</comment>
   * <strong>mysqli_real_query()</strong>
   * <strong>mysqli_use_result()</strong>


