File: echo.xml

package info (click to toggle)
phpdoc 20050512-1
  • links: PTS
  • area: non-free
  • in suites: sarge
  • size: 36,592 kB
  • ctags: 1,501
  • sloc: xml: 376,768; php: 6,708; cpp: 500; makefile: 293; perl: 161; sh: 151; awk: 28
file content (132 lines) | stat: -rw-r--r-- 3,959 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.15 $ -->
<!-- splitted from ./en/functions/strings.xml, last change in rev 1.2 -->
  <refentry id="function.echo">
   <refnamediv>
    <refname>echo</refname>
    <refpurpose>Output one or more strings</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Description</title>
     <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>
     Outputs all parameters.
    </simpara>
    <para>
     <function>echo</function> is not actually a function (it is a
     language construct) so you are not required to use parentheses
     with it. In fact, if you want to pass more than one parameter
     to echo, you must not enclose the parameters within parentheses.
    </para>
    <para>
     <example>
      <title><function>echo</function> examples</title>
      <programlisting role="php">
<![CDATA[
<?php
echo "Hello World";

echo "This spans
multiple lines. The newlines will be 
output as well";

echo "This spans\nmultiple lines. The newlines will be\noutput as well.";

echo "Escaping characters is done \"Like this\".";

// You can use variables inside of an echo statement
$foo = "foobar";
$bar = "barbaz";

echo "foo is $foo"; // foo is foobar

// You can also use arrays
$bar = array("value" => "foo");

echo "this is {$bar['value']} !"; // this is foo !

// Using single quotes will print the variable name, not the value
echo 'foo is $foo'; // foo is $foo

// If you are not using any other characters, you can just echo variables
echo $foo;          // foobar
echo $foo,$bar;     // foobarbarbaz

// Some people prefer passing multiple parameters to echo over concatenation.
echo 'This ', 'string ', 'was ', 'made ', 'with multiple parameters.', chr(10);
echo 'This ' . 'string ' . 'was ' . 'made ' . 'with concatenation.' . "\n";

echo <<<END
This uses the "here document" syntax to output
multiple lines with $variable interpolation. Note
that the here document terminator must appear on a
line with just a semicolon. no extra whitespace!
END;

// Because echo is not a function, following code is invalid. 
($some_var) ? echo 'true' : echo 'false';

// However, the following examples will work:
($some_var) ? print('true'): print('false'); // print is a function
echo $some_var ? 'true': 'false'; // changing the statement around
?>
]]>
      </programlisting>
     </example>
    </para>
    <para>
     <function>echo</function> also has a shortcut syntax, where you can
     immediately follow the opening tag with an equals sign. This short syntax
     only works with the <link
     linkend="ini.short-open-tag">short_open_tag</link> configuration setting
     enabled.
     <informalexample>
      <programlisting role="php">
<![CDATA[
I have <?=$foo?> foo.
]]>
      </programlisting>
     </informalexample>
    </para>
    <simpara>
     For a short discussion about the differences between 
     <function>print</function> and <function>echo</function>, see this FAQTs
     Knowledge Base Article: <ulink url="&url.echo-print;">&url.echo-print;
     </ulink>
    </simpara>
    
    &note.language-construct;
    
    <simpara>
     See also
     <function>print</function>,
     <function>printf</function>, and
     <function>flush</function>.
    </simpara>
   </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:"../../../../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
-->