PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backups, Restore, Migration & Clone / 4.0.0
WP STAGING – WordPress Backups, Restore, Migration & Clone v4.0.0
4.11.2 4.11.1 4.11.0 4.10.0 4.9.5 4.9.4 4.9.3 4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Framework / Utils / Escape.php
wp-staging / Framework / Utils Last commit date
Cache 1 year ago DBPermissions.php 1 year ago DataEncoder.php 1 year ago Escape.php 2 years ago Glob.php 2 years ago Hooks.php 1 year ago Math.php 1 year ago PluginInfo.php 2 years ago Sanitize.php 2 years ago ServerVars.php 2 years ago SlashMode.php 5 years ago Strings.php 1 year ago Times.php 1 year ago Urls.php 2 years ago Version.php 1 year ago WpDefaultDirectories.php 2 years ago
Escape.php
78 lines
1 <?php
2
3 namespace WPStaging\Framework\Utils;
4
5 class Escape
6 {
7 /**
8 * Escape html with allowed html tags
9 *
10 * @param string $content
11 * @return string
12 */
13 public function escapeHtml(string $content): string
14 {
15 return wp_kses($content, $this->htmlAllowedDuringEscape([]));
16 }
17
18 /**
19 * Html decode and then wp_kses_post
20 *
21 * @param string $text
22 * @return string
23 */
24 public function decodeKsesPost(string $text): string
25 {
26 return wp_kses_post(html_entity_decode($text));
27 }
28
29 /**
30 * @param array $array
31 * @return array
32 */
33 public function htmlAllowedDuringEscape(array $array): array
34 {
35 return [
36 'a' => [
37 'id' => [],
38 'href' => [],
39 'title' => [],
40 'target' => [],
41 'rel' => [],
42 'class' => [],
43 ],
44 'span' => [
45 'class' => [],
46 'title' => [],
47 ],
48 'p' => [],
49 'br' => [],
50 'code' => [],
51 'em' => [],
52 'strong' => [
53 'class' => [],
54 ],
55 ];
56 }
57
58 /**
59 * Mimics the mysql_real_escape_string function. Adapted from a post by 'feedr' on php.net.
60 * @link http://php.net/manual/en/function.mysql-real-escape-string.php#101248
61 * @access public
62 * @param string|array $input The string to escape.
63 * @return string|array
64 */
65 public function mysqlRealEscapeString($input)
66 {
67 if (is_array($input)) {
68 return array_map(__METHOD__, $input);
69 }
70
71 if (!empty($input) && is_string($input)) {
72 return str_replace(['\\', "\0", "\n", "\r", "'", '"', "\x1a"], ['\\\\', '\\0', '\\n', '\\r', "\\'", '\\"', '\\Z'], $input);
73 }
74
75 return $input;
76 }
77 }
78