Annotation of embedaddon/php/ext/standard/tests/strings/htmlspecialchars_basic.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test htmlspecialchars() function : basic functionality
3: --FILE--
4: <?php
5: /* Prototype : string htmlspecialchars ( string $string [, int $quote_style [, string $charset [, bool $double_encode ]]] )
6: * Description: Convert special characters to HTML entities
7: * Source code: ext/standard/string.c
8: */
9:
10: echo "*** Testing htmlspecialchars() : basic functionality ***\n";
11:
12: $s1 = "abc<>\"&\n";
13: $s2 = "&&abc<>\"&\n";
14: $s3 = "a>,\<bc<>\"&\n";
15: $s4 = "a\'\'&bc<>\"&\n";
16: $s5 = "&<\n";
17: echo "Basic tests\n";
18: echo "Test 1: " . htmlspecialchars ($s1);
19: echo "Test 2: " . htmlspecialchars ($s2);
20: echo "Test 3: " . htmlspecialchars ($s3);
21: echo "Test 4: " . htmlspecialchars ($s4);
22: echo "Test 5: " . htmlspecialchars ($s5);
23: echo "Test 6: " . htmlspecialchars ($s1,ENT_NOQUOTES);
24: echo "Test 7: " . htmlspecialchars ($s2,ENT_NOQUOTES);
25: echo "Test 8: " . htmlspecialchars ($s3,ENT_NOQUOTES);
26: echo "Test 9: " . htmlspecialchars ($s4,ENT_NOQUOTES);
27: echo "Test 10: " . htmlspecialchars ($s5,ENT_NOQUOTES);
28: echo "Test 11: " . htmlspecialchars ($s1,ENT_COMPAT);
29: echo "Test 12: " . htmlspecialchars ($s2,ENT_COMPAT);
30: echo "Test 13: " . htmlspecialchars ($s3,ENT_COMPAT);
31: echo "Test 14: " . htmlspecialchars ($s4,ENT_COMPAT);
32: echo "Test 15: " . htmlspecialchars ($s5,ENT_COMPAT);
33: echo "Test 16: " . htmlspecialchars ($s1,ENT_QUOTES);
34: echo "Test 17: " . htmlspecialchars ($s2,ENT_QUOTES);
35: echo "Test 18: " . htmlspecialchars ($s3,ENT_QUOTES);
36: echo "Test 19: " . htmlspecialchars ($s4,ENT_QUOTES);
37: echo "Test 20: " . htmlspecialchars ($s5,ENT_QUOTES);
38:
39: echo "\nTry with char set option - specify default ISO-8859-1\n";
40: echo "Test 21: " . htmlspecialchars ($s1,ENT_NOQUOTES, "ISO-8859-1");
41: echo "Test 22: " . htmlspecialchars ($s2,ENT_COMPAT, "ISO-8859-1");
42: echo "Test 23: " . htmlspecialchars ($s3,ENT_QUOTES, "ISO-8859-1");
43: echo "Test 24: " . htmlspecialchars ($s5,ENT_QUOTES, "ISO-8859-1");
44:
45: echo "\nTry with double decode FALSE\n";
46: $s1 = ""&xyz>abc"\n";
47: $s2 = ""&123<456"\n";
48: $s3 = "\"300 < 400\"\n";
49: echo "Test 25: " . htmlspecialchars ($s1,ENT_NOQUOTES, "ISO-8859-1", false);
50: echo "Test 26: " . htmlspecialchars ($s2,ENT_NOQUOTES, "ISO-8859-1", false);
51: echo "Test 27: " . htmlspecialchars ($s3,ENT_NOQUOTES, "ISO-8859-1", false);
52:
53: echo "\nTry with double decode TRUE\n";
54: echo "Test 28: " . htmlspecialchars ($s1, ENT_NOQUOTES, "ISO-8859-1", true);
55: echo "Test 29: " . htmlspecialchars ($s2, ENT_NOQUOTES, "ISO-8859-1", true);
56:
57: ?>
58: ===DONE===
59: --EXPECT--
60: *** Testing htmlspecialchars() : basic functionality ***
61: Basic tests
62: Test 1: abc<>"&
63: Test 2: &&abc<>"&
64: Test 3: a>,\<bc<>"&
65: Test 4: a\'\'&bc<>"&
66: Test 5: &amp;&lt;
67: Test 6: abc<>"&
68: Test 7: &&abc<>"&
69: Test 8: a>,\<bc<>"&
70: Test 9: a\'\'&bc<>"&
71: Test 10: &amp;&lt;
72: Test 11: abc<>"&
73: Test 12: &&abc<>"&
74: Test 13: a>,\<bc<>"&
75: Test 14: a\'\'&bc<>"&
76: Test 15: &amp;&lt;
77: Test 16: abc<>"&
78: Test 17: &&abc<>"&
79: Test 18: a>,\<bc<>"&
80: Test 19: a\'\'&bc<>"&
81: Test 20: &amp;&lt;
82:
83: Try with char set option - specify default ISO-8859-1
84: Test 21: abc<>"&
85: Test 22: &&abc<>"&
86: Test 23: a>,\<bc<>"&
87: Test 24: &amp;&lt;
88:
89: Try with double decode FALSE
90: Test 25: "&xyz>abc"
91: Test 26: "&123<456"
92: Test 27: "300 < 400"
93:
94: Try with double decode TRUE
95: Test 28: &quot;&amp;xyz&gt;abc&quot;
96: Test 29: &quot;&amp;123&lt;456&quot;
97: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>