1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-26 16:32:13 +01:00
Files
archived-doc-es/reference/strings/functions/echo.xml
Pedro Antonio Gil Rodríguez 8a8de890e6 Actualización a la última versión
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@338484 c90b9560-bf6c-de11-be94-00142212c4b1
2016-01-13 23:16:30 +00:00

206 lines
6.0 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: fba532ed30ea769342e2488f3c0de84b47017ff3 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<refentry xmlns:xlink="http://www.w3.org/1999/xlink" xmlns="http://docbook.org/ns/docbook" xml:id="function.echo">
<refnamediv>
<refname>echo</refname>
<refpurpose>Muestra una o más cadenas</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>echo</methodname>
<methodparam><type>string</type><parameter>arg1</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>...</parameter></methodparam>
</methodsynopsis>
<simpara>
Muestra todos los parámetros. No se pospone ningua nueva línea adicional.
</simpara>
<para>
<literal>echo</literal> no es realmente una función (es una
construcción del lenguaje), por lo que no se requiere el uso de paréntesis
con él. <literal>echo</literal> (a diferencia de otras construcciones
del lenguaje) no se comporta como una función, es decir no siempre
se puede usar en el contexto de una función. Además, si se quiere pasar
más de un parámetro a <literal>echo</literal>, éstos
no deben estar entre paréntesis.
</para>
<para>
<literal>echo</literal> también posee una sintaxis abreviada, donde se puede
poner el símbolo igual justo después de la etiqueta de apertura de PHP. Antes de PHP 5.4.0,
este tipo de sintaxis abreviada únicamente funciona con la opción de configuración
<link linkend="ini.short-open-tag">short_open_tag</link>
activada.
<informalexample>
<programlisting role="php">
<![CDATA[
I have <?=$foo?> foo.
]]>
</programlisting>
</informalexample>
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>arg1</parameter></term>
<listitem>
<para>
El parámetro a mostrar.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>...</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplos de <literal>echo</literal></title>
<programlisting role="php">
<![CDATA[
<?php
echo "Hola mundo";
echo "Esto abarca
multiple líneas. Los saltos de línea también
se mostrarán";
echo "Esto abarca\nmúltiples líneas. Los saltos de línea también\nse mostrarán.";
echo "Para escapar caracteres se hace \"así\".";
// Se pueden usar variables dentro de una sentencia echo
$foo = "foobar";
$bar = "barbaz";
echo "foo es $foo"; // foo es foobar
// También se pueden usar arrays
$baz = array("valor" => "foo");
echo "Esto es {$baz['valor']} !"; // Esto es foo !
// Si se utilizan comillas simples, se mostrará el nombre de la variable, no su valor
echo 'foo es $foo'; // foo es $foo
// Si no usan otros caracteres, se puede utilizar echo para mostrar el valor de las variables.
echo $foo; // foobar
echo $foo,$bar; // foobarbarbaz
// Las cadenas pueden ser pasadas individualmente como varios argumentos o
// concatenadas como un único argumento
echo 'Esta ', 'cadena ', 'está ', 'hecha ', 'con múltiple parámetros.', chr(10);
echo 'Esta ' . 'cadena ' . 'está ' . 'hecha ' . 'con concatenación.' . "\n";
echo <<<END
Aquí se utiliza la sintaxis de "here document" para mostrar
múltiples líneas con interpolación de $variable. Nótese
que el finalizador de here document debe aparecer en una
línea con solamente un punto y coma. ¡Nada de espacios extra!
END;
// Ya que echo no se comporta como una función, el siguiente código no es válido.
($variable) ? echo 'true' : echo 'false';
// Sin embargo, el siguiente código funcionará:
($variable) ? print 'true' : print 'false'; // print también es una construcción, pero
// se comporta como una función, por lo que
// puede usarse en este contexto.
echo $variable ? 'true': 'false'; // dando la vuelta a la declaración
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&note.language-construct;
<tip>
<para>
Un beneficio de pasar varios argumentos sobre la concatenación en
<function>echo</function> es la precedencia del operador punto en
PHP. Si se pasan varios argumentos, no serán necesarios paréntesis
para forzar la precedencia:
</para>
<programlisting role="php">
<![CDATA[
<?php
echo "Sum: ", 1 + 2;
echo "Hello ", isset($name) ? $name : "John Doe", "!";
]]>
</programlisting>
<para>
Con la concatenación, el operador punto tiene mayor precedencia que
los operadores de adición y ternario, por lo que se deben utilizar
paréntesis para un correcto funcionamiento:
</para>
<programlisting role="php">
<![CDATA[
<?php
echo 'Sum: ' . (1 + 2);
echo 'Hello ' . (isset($name) ? $name : 'John Doe') . '!';
]]>
</programlisting>
</tip>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>print</function></member>
<member><function>printf</function></member>
<member><function>flush</function></member>
<member><link linkend="language.types.string.syntax.heredoc">Sintaxis de Heredoc</link></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- 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
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/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
-->