cortesi Thu Dec 6 19:33:37 2001 EDT
Modified files:
/phpdoc/it/language constants.xml
Log:
translated by baldo, now maintainer is me
Index: phpdoc/it/language/constants.xml
diff -u /dev/null phpdoc/it/language/constants.xml:1.7
--- /dev/null Thu Dec 6 19:33:37 2001
+++ phpdoc/it/language/constants.xml Thu Dec 6 19:33:37 2001
@@ -0,0 +1,294 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<!-- EN-Revision: 1.22 Maintainer: cortesi Status: ready -->
+ <chapter id="language.constants">
+ <title>Costanti</title>
+
+ <simpara>
+ Una costante � un identificatore (nome) per un valore. Come si pu� intuire,
+ tale valore non pu� cambiare durante l'esecuzione dello script
+ (le costanti <constant>__FILE__</constant> e
+ <constant>__LINE__</constant> sono l'unica eccezione). Una costante �
+ "case-sensitive" per default. � convenzione comune che i nomi di costante
+ siano sempre maiuscoli.
+ </simpara>
+ <para>
+ In PHP il nome di una costante segue le regole di qualsiasi "etichetta".
+ Un nome di costante valido inizia con una lettera o underscore, seguita
+ da un numero qualsiasi di caratteri alfanumerici o underscore.
+ L'espressione regolare che esprime questa convenzione �:
+ <literal>[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*</literal>
+
+ <!-- TODO: Example of valid & invalid constant names -->
+ </para>
+
+ <note>
+ <simpara>
+ In questo contesto una lettera � a-z, A-Z e i caratteri ASCII
+ dal 127 al 255 (0x7f-0xff).
+ </simpara>
+ </note>
+ <simpara>
+ Una costante � sempre globale.
+ </simpara>
+ <sect1 id="language.constants.syntax">
+ <title>Sintassi</title>
+ <simpara>
+ � possibile definire una variabile utilizzando la funzione
+ <function>define</function>. Una volta definita una variabile,
+ non � possibile cambiarne il valore o eliminarla.
+ </simpara>
+ <simpara>
+ Le costanti possono contenere solo dati di tipo scalare
+ (<type>boolean</type>, <type>integer</type>,
+ <type>double</type> and <type>string</type>).
+ </simpara>
+ <simpara>
+ Per ottenere il valore di una costante � sufficiente specificarne il nome.
+ A differenza delle variabili, <emphasis>non</emphasis> � necessario
+ anteporre il simbolo <literal>$</literal> al nome di una variabile.
+ Si pu� anche utilizzare la funzione <function>constant</function>,
+ per leggere il valore di una costante, nel caso in cui se ne ottenga
+ dinamicamente il nome.
+ Si utilizzi <function>get_defined_constants</function> per ottenere
+ una lista delle variabili definite.
+ </simpara>
+ <note>
+ <simpara>
+ Costanti e variabili (globali) si trovano in un "namespace" differente.
+ Questo implica che generalmente &true; e
+ <varname>$TRUE</varname> sono differenti.
+ </simpara>
+ </note>
+ <simpara>
+ Se si utilizza il nome di una costante che non � definita, PHP assume che
+ detto valore sia il nome della costante stessa. Quando ci� accade
+ PHP lo seganala il problema con con un <link
+linkend="features.error-handling">notice</link>.
+ Per sapere se una costante � definita, si pu� utilizzare la
+ funzione <function>defined</function>.
+ </simpara>
+ <para>
+ Di seguito sono riportate le principali differenze dalle variabili:
+ <itemizedlist>
+ <listitem>
+ <simpara>
+ Le costanti non richiedono il simbolo di dollaro (<literal>$</literal>) anteposto
+al nome;
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Le costanti si possono definire e utilizzare in qualsiasi contesto
+indipendentemente
+ dalle regole dello spazio dei nomi;
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Le costanti non si possono ridefinire o eliminare una volta che siano
+ state definite; e
+ </simpara>
+ </listitem>
+ <listitem>
+ <simpara>
+ Le costanti possono contenere solo valori scalari.
+ </simpara>
+ </listitem>
+ </itemizedlist>
+ </para>
+
+ <para>
+ <example>
+ <title>Definizione di costanti</title>
+ <programlisting>
+<![CDATA[
+<?php
+define("COSTANTE", "Ciao mondo.");
+echo COSTANTE; // stampa "Ciao mondo."
+echo Costante; // stampa "Costante" e genera una notice.
+?>
+]]>
+ </programlisting>
+ </example>
+
+ </para>
+
+ </sect1>
+
+ <sect1 id="language.constants.predefined">
+ <title>Costanti predefinite</title>
+ <para>
+ Le costanti predefinite (sempre disponibili) sono:
+
+ <variablelist>
+
+ <varlistentry>
+ <term>__FILE__ (case-insensitive)</term>
+ <listitem>
+ <simpara>
+ Il nome del file dello script processato. Se usato
+ in un file che � stato incluso tramite le funzioni include e require, allora
+corrisponde al
+ nome del file incluso e non al nome del
+ file genitore.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>__LINE__ (case-insensitive)</term>
+ <listitem>
+ <simpara>
+ Il numero di linea all'interno del file
+ processato. Se usato in un file che � stato incluso tramite le funzioni
+include
+ e require, allora corrisponde alla posizione nel file incluso.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>PHP_VERSION</term>
+ <listitem>
+ <simpara>
+ La rappresentazione in formato stringa della versione del motore PHP
+ attualmente in uso: per esempio '4.1.0'.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>PHP_OS</term>
+ <listitem>
+ <simpara>
+ Il nome del sistema operativo sul quale il motore PHP �
+ in esecuzione. Valori possibili possono essere:
+ "AIX", "Darwin" (MacOS), "Linux", "SunOS", "WIN32", "WINNT".
+ Nota: potrebbero essere presenti anche altri valori.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&true; (case-insensitive)</term>
+ <listitem>
+ <simpara>
+ Un valore &true; (vedere tipo <type>boolean</type>).
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&false; (case-insensitive)</term>
+ <listitem>
+ <simpara>
+ Un valore &false; (vedere tipo <type>boolean</type>).
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>&null; (case-insensitive)</term>
+ <listitem>
+ <simpara>
+ Un valore &null; (vedere tipo <type>boolean</type>).
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>E_ERROR</term>
+ <listitem>
+ <simpara>
+ Denota un errore differente da un errore di parsing.
+ Non � recuperabile.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>E_WARNING</term>
+ <listitem>
+ <simpara>
+ Denota una condizione dove il PHP sa che c'� qualcosa di sbagliato, ma
+ continua comunque l'esecuzione; Queste possono essere gestite dallo script
+ stesso. Un esempio pu� essere una regexp non valida in
+ <function>ereg</function>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>E_PARSE</term>
+ <listitem>
+ <simpara>
+ Il parser ha incontrato in uno script una sintassi non valida.
+ L'errore non � recuperabile.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>E_NOTICE</term>
+ <listitem>
+ <simpara>
+ È accaduto qualcosa che pu� o pu� non essere un errore. L'esecuzione
+ continua. Esempi includono: usare una stringa non racchiusa da virgolette come
+indice di un array
+ o accedere ad una variabile che non � stata definita.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>E_ALL</term>
+ <listitem>
+ <simpara>
+ Tutte le costanti E_* racchiuse in una sola. Se usata assieme a
+ <function>error_reporting</function>, far� si che tutti gli errori rilevati
+ dal PHP siano comunicati.
+ </simpara>
+ </listitem>
+ </varlistentry>
+
+ </variablelist>
+ </para>
+
+ <para>
+ Le costanti <literal>E_*</literal> sono tipicamente usate in congiunzione alla
+funzione
+ <function>error_reporting</function> per impostare il livello di
+ errori da comunicare. Vedere tutte queste costanti in
+ <link linkend="features.error-handling">Gestione errori</link>.
+
+ <example>
+ <title>Uso di __FILE__ e __LINE__</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+function comunica_errore($file, $linea, $messaggio)
+{
+ echo "� avvenuto un errore in $file alla linea $linea: $messaggio.";
+}
+
+report_error(__FILE__, __LINE__, "Qualcosa � andato storto!");
+?>
+]]>
+ </programlisting>
+ </example>
+ </para>
+ </sect1>
+ </chapter>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->