1: <?php
2: /*************************************************************************************/
3: /* */
4: /* Thelia */
5: /* */
6: /* Copyright (c) OpenStudio */
7: /* email : info@thelia.net */
8: /* web : http://www.thelia.net */
9: /* */
10: /* This program is free software; you can redistribute it and/or modify */
11: /* it under the terms of the GNU General Public License as published by */
12: /* the Free Software Foundation; either version 3 of the License */
13: /* */
14: /* This program is distributed in the hope that it will be useful, */
15: /* but WITHOUT ANY WARRANTY; without even the implied warranty of */
16: /* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the */
17: /* GNU General Public License for more details. */
18: /* */
19: /* You should have received a copy of the GNU General Public License */
20: /* along with this program. If not, see <http://www.gnu.org/licenses/>. */
21: /* */
22: /*************************************************************************************/
23:
24: namespace Thelia\Tpex;
25:
26: class Tools
27: {
28: /**
29: *
30: * search needle into haystask string.
31: *
32: * exemple :
33: *
34: * $haystack => type="foo" id="loop1" param1="value1"
35: *
36: * Tools::extractValueParam("type", $haystack) returns foo
37: *
38: * @param string $needle
39: * @param string $haystack
40: * @return mixed
41: */
42: public static function extractValueParam($needle, $haystack)
43: {
44: if(!strstr($haystack, $needle) || !preg_match("/$needle=\"([^\"]*)\"/", $haystack, $restag)) return;
45:
46: return $restag[1];
47: }
48:
49: /**
50: *
51: * sort variable array. the more longer must be first
52: *
53: * @param $a
54: * @param $b
55: * @return int
56: */
57: public static function sortArray($a, $b)
58: {
59: $la = strlen($a);
60: $lb = strlen($b);
61:
62: if ($la == $lb) return 0;
63: return ($la > $lb) ? -1 : 1;
64: }
65: }
66: