Priklady/03/Funkcie.php
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
2 <html>
3 <head>
4 <title>Funkcie</title>
5 <meta http-equiv="Author" content="Imrich BURANSKY" />
6 <meta http-equiv="Content-Type" content="text/html; charset=Windows-1250" />
7 </head>
8 <body>
9 <h2>Funkcie</h2>
10 <?php
11
12 echo "
13 <hr /> <!-- ============================================ -->
14 <h3>Funkcia strlen</h3>
15 <h4>int strlen (string str)</h4>
16 ";
17 $str = "Kuko je bábka.";
18 $nZnakov = strlen ($str);
19 echo "Dĺžka reťazca <b>'$str'</b> je <b>$nZnakov</b>";
20
21 echo "
22 <hr /> <!-- ============================================ -->
23 <h3>Funkcia strpos</h3>
24 <h4>int strpos (string haystack, string needle [, int offset])</h4>
25 ";
26 // Text v ktorom budeme hľadať:
27 $str = "Kuko je bábka.";
28 // 1. Hľadáme "je"
29 $xx="je";
30 // Volanie funkcie
31 $pos = strpos($str, $xx);
32 // Oznam - prva časť.
33 $sOznam= "V reťazci <b>'$str'</b> sa <b>'$xx'</b>";
34 // Druhú časť oznamu vytvoríme vyhodnotením
35 // obsahu premennej získanej funkciou strpos.
36 if ($pos === false) $sOznam.=" nenachádza !";
37 else $sOznam.=" nachádza na pozícii $pos";
38 echo "$sOznam<br/>
39 ";
40 // 2. Hľadáme "juj"
41 $xx="juj";
42 $sOznam= "V reťazci <b>'$str'</b> sa <b>'$xx'</b>";
43 if (($pos = strpos($str, $xx)) === false) $sOznam.=" nenachádza !";
44 else $sOznam.=" nachádza na pozícii $pos";
45 echo "$sOznam<br/>
46 ";
47 // 3. Pohľadáme všetky výskyty "k"
48 $xx="k";
49 echo "V reťazci <b>'$str'</b> sa <b>'$xx'</b> nachádza na pozíciách: ";
50 // V cykle začneme hľadať od začiatku reťazca.
51 $od=0;
52 while (($pos = strpos($str, $xx, $od)) !== false) {
53 echo " $pos"; // výpis pozície
54 // V ďalšom prechode cyklom budeme hľadať
55 // od znaku za zistenou pozíciou.
56 $od=$pos + 1;
57 }
58
59 echo "
60 <hr /> <!-- ============================================ -->
61 <h3>Funkcia strstr</h3>
62 <h4>string strstr (string haystack, string needle)</h4>
63 ";
64 // Text, v ktorom budeme hľadať:
65 $str = "Kuko je bábka.";
66 // 1. Hľadáme "báb" funkciou strstr
67 $xx="báb";
68 // Pripravíme prvú časť oznamu.
69 $sOznam= "V reťazci <b>'$str'</b> časť začínajúca <b>'$xx'</b>";
70 // Druhú časť oznamu vytvoríme vyhodnotením
71 // obsahu premennej získanej funkciou strstr.
72 $sCast = strstr($str, $xx);
73 if ($sCast === false) $sOznam.=" nie je !";
74 else $sOznam.=" je : " . $sCast;
75 echo "$sOznam<br/>
76 ";
77
78 // 2. Hľadáme "Báb" funkciou strstr
79 $xx="Báb";
80 $sOznam= "V reťazci <b>'$str'</b> časť začínajúca <b>'$xx'</b>";
81 $sCast = strstr($str, $xx);
82 if ($sCast === false) $sOznam.=" nie je !";
83 else $sOznam.=" je : " . $sCast;
84 echo "$sOznam<br/>
85 ";
86
87 echo "
88 <hr /> <!-- ============================================ -->
89 <h3>Funkcia stristr</h3>
90 <h4>string stristr ( string haystack, string needle)</h4>
91 ";
92 // 3. Hľadáme "Báb" funkciou stristr
93 $xx="Báb";
94 $sCast = stristr($str, $xx);
95 // Vypis vysledku
96 $sOznam= "V reťazci <b>'$str'</b> časť začínajúca <b>'$xx'</b>";
97 if ($sCast === false) $sOznam.=" nie je !";
98 else $sOznam.=" je : " . $sCast;
99 echo "$sOznam<br/>
100 ";
101
102 echo "
103 <hr /> <!-- ============================================ -->
104 <h3>Funkcia substr</h3>
105 <h4>string substr (string text, int start [, int length])</h4>
106 ";
107
108 echo 'Volaním <b>substr("abcdef", 1)</b> získame <b>',
109 substr("abcdef", 1), "</b><br/>\n";
110
111 echo 'Volaním <b>substr("abcdef", 1, 3)</b> získame <b>',
112 substr("abcdef", 1, 3), "</b><br/>\n";
113
114 echo 'Volaním <b>substr("abcdef", 3, -2)</b> získame <b>',
115 substr("abcdef", 3, -2), "</b><br/>\n";
116
117 echo 'Volaním <b>substr("abcdef", 7)</b> získame <b>',
118 substr("abcdef", 7), "</b><br/><br/>\n";
119
120 echo 'Volaním <b>substr("abcdef", -1)</b> získame <b>',
121 substr("abcdef", -1), "</b><br/>\n";
122
123 echo 'Volaním <b>substr("abcdef", -3)</b> získame <b>',
124 substr("abcdef", -3), "</b><br/>\n";
125
126 echo 'Volaním <b>substr("abcdef", -3, 2)</b> získame <b>',
127 substr("abcdef", -3, 2), "</b><br/>\n";
128
129 echo 'Volaním <b>substr("abcdef", -3, -2)</b> získame <b>',
130 substr("abcdef", -3, -2), "</b><br/>\n";
131
132 echo "
133 <hr /> <!-- ============================================ -->
134 <h3>Funkcia strtok</h3>
135 <h4>Prvé volanie : string strtok (string arg1, string arg2)</h4>
136 <h4>Nasledujúce volania: string strtok (string arg2)</h4>
137 ";
138
139 // Získanie zložiek dátumu - oddelovač je bodka
140 $str = "22.12.2002";
141 $den= strtok ($str,".");
142 $mesiac= strtok (".");
143 $rok= strtok (".");
144 echo "V dátume <b>$str</b> je deň $den, mesiac $mesiac, rok $rok.<br>\n";
145
146 // Rozobranie vety na slová - oddelovače sú medzera, čiarka a bodka
147 $str = "Hurvínek, Kuko a Buratíno sú bábky.";
148 // Výpis textu:
149 echo "<br>Veta '<b>$str</b>' obsahuje slová:<br/>\n";
150 // Zistenie a výpis slov - vsimnite si roznu velkost pismien StrTok, STRTOK
151 $slovo = StrTok($str," .,");
152 while ($slovo !== false) {
153 echo "- $slovo<br>\n";
154 $slovo = STRTOK(" .,");
155 }
156
157 echo "
158 <hr /> <!-- ============================================ -->
159 <h3>Konštrukcia array</h3>
160 <h4>array array ( [mixed ...])</h4>
161 ";
162
163 $Babky = array ("Hurvínek", "Kuko", "Buratino");
164 echo '
165 $Babky = array ("Hurvínek", "Kuko", "Buratino");
166 <br /><br />
167 ';
168 // Ukážky práce s poľom
169 echo "
170 <b>Výpis poľa funkciou print_r</b><br />
171 <pre>
172 ";print_r($Babky);
173 echo "
174 </pre>
175 ";
176 echo "<b>Výpis prvkov poľa s vyžítím indexov</b><br /><br />
177 ";
178 echo "
179 \$Babky[0] = $Babky[0]<br />
180 \$Babky[1] = $Babky[1]<br />
181 \$Babky[2] = $Babky[2]<br />
182 ";
183 echo "<p><b>Výpis prvkov poľa v cykle for</b><br /><br />
184 ";
185 for ( $i=0; $i< count($Babky); $i++ ) {
186 echo "
187 ".$Babky[$i]." <br />
188 ";
189 }
190 // Pole s definovanými indexami aj hodnotami prvkov
191 $Babky = array ("h"=>"Hurvínek", "k"=>"Kuko", "b"=>"Buratino");
192 echo '
193 <p> $Babky = array ("h"=>"Hurvínek", "k"=>"Kuko", "b"=>"Buratino") <br /><br />
194 ';
195 echo "
196 <b>Výpis poľa funkciou print_r</b><br />
197 <pre>
198 ";print_r($Babky);
199 echo "
200 </pre>
201 ";
202 echo '<b>Výpis prvkov poľa s vyžítím indexov</b><br /><br />
203 $Babky["h"] = '. $Babky["h"].'<br />
204 $Babky["k"] = '. $Babky["k"].'<br />
205 $Babky["b"] = '. $Babky["b"].'<br />
206 ';
207 echo "<p><b>Výpis prvkov poľa v cykle foreach</b><br /><br />
208 ";
209 foreach ( $Babky as $Prvok ) {
210 echo "
211 $Prvok <br />
212 ";
213 }
214 echo "<p><b>Výpis indexov a prvkov poľa v cykle foreach</b><br /><br />
215 ";
216 foreach ( $Babky as $Index => $Prvok ) {
217 echo "
218 $Index .. $Prvok. <br />
219 ";
220 }
221
222 echo "
223 <hr /> <!-- ============================================ -->
224 <h3>Konštrukcia list</h3>
225 <h4>void list ( mixed ...)</h4>
226 ";
227
228 $Babky = array ("Hurvínek", "Kuko", "Buratino");
229 list ($a, $b, $c) = $Babky;
230 // Vypis vysledku
231 echo 'Príkazmi: <pre>
232 $Babky = array ("Hurvínek", "Kuko", "Buratino");
233 list ($a, $b, $c) = $Babky;
234 </pre>
235 dostaneme:<br /><br />
236 ';
237 echo "
238 \$a = $a <br />
239 \$b = $b <br />
240 \$c = $c <br />
241 ";
242
243 echo "
244 <hr /> <!-- ============================================ -->
245 <h3>Funkcia split</h3>
246 <h4>array split (string vzor, string text [, int limit])</h4>
247 ";
248 // Získanie zložiek dátumu - oddelovač je bodka
249 $str = "22.12.2002";
250 list ($den, $mesiac, $rok)= split("[.]", $str, 3);
251 // Vypis vysledku
252 echo "V dátume <b>$str</b> je deň $den, mesiac $mesiac, rok $rok.<br>\n ";
253
254 // Rozobranie vety na slová - oddelovače sú medzera, čiarka a bodka
255 $str = "Hurvínek, Kuko a Buratíno sú bábky.";
256 // Ziskame pole $Slova
257 $Slova=split("[ .,]", $str);
258 // Výpis textu:
259 echo "<br>Veta '<b>$str</b>' obsahuje slová:<br/>\n";
260 // Výpis slov:
261 foreach ($Slova as $slovo) echo "- $slovo<br>\n";
262
263 echo "
264 <hr /> <!-- ============================================ -->
265 <h3>Funkcia date</h3>
266
267 <h4>string date ( string format [, int timestamp])</h4>
268 ";
269
270 echo '
271 <table border="1">
272 <tr><th>Akcia</th><th>Výsledok</th></tr>
273 <tr>
274 <td>date ("d.m.Y H:i:s")</td>
275 <td>'. date ("d.m.Y H:i:s") . '</td>
276 </tr>
277 <tr>
278 <td>date ("Y-m-d H:i:s")</td>
279 <td>'. date ("Y-m-d H:i:s") . '</td>
280 </tr>
281 <tr>
282 <td>date ("l dS of F Y h:i:s A")</td>
283 <td>'. date ("l dS of F Y h:i:s A") . '
284 </td></tr>
285 <tr>
286 <td>date ("F j, Y, g:i a")</td>
287 <td>'. date ("F j, Y, g:i a") . '</td>
288 </tr>
289 <tr>
290 <td>date ("D M j G:i:s T Y")</td>
291 <td>'. date ("D M j G:i:s T Y") . '</td>
292 </tr>
293 </table>
294 <br />
295 <hr /> <!-- ============================================ -->
296 ';
297
298 ?>
299 </body>
300 </html>