Mercurial > epgrec.yaz
comparison Smarty/plugins/modifier.capitalize.php @ 1:f5a9f0eb4858
deleted: LICENSE.ja
author | Sushi-k <epgrec@park.mda.or.jp> |
---|---|
date | Wed, 08 Jul 2009 11:44:50 +0900 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
0:96312e6ab8d4 | 1:f5a9f0eb4858 |
---|---|
1 <?php | |
2 /** | |
3 * Smarty plugin | |
4 * @package Smarty | |
5 * @subpackage plugins | |
6 */ | |
7 | |
8 | |
9 /** | |
10 * Smarty capitalize modifier plugin | |
11 * | |
12 * Type: modifier<br> | |
13 * Name: capitalize<br> | |
14 * Purpose: capitalize words in the string | |
15 * @link http://smarty.php.net/manual/en/language.modifiers.php#LANGUAGE.MODIFIER.CAPITALIZE | |
16 * capitalize (Smarty online manual) | |
17 * @author Monte Ohrt <monte at ohrt dot com> | |
18 * @param string | |
19 * @return string | |
20 */ | |
21 function smarty_modifier_capitalize($string, $uc_digits = false) | |
22 { | |
23 smarty_modifier_capitalize_ucfirst(null, $uc_digits); | |
24 return preg_replace_callback('!\'?\b\w(\w|\')*\b!', 'smarty_modifier_capitalize_ucfirst', $string); | |
25 } | |
26 | |
27 function smarty_modifier_capitalize_ucfirst($string, $uc_digits = null) | |
28 { | |
29 static $_uc_digits = false; | |
30 | |
31 if(isset($uc_digits)) { | |
32 $_uc_digits = $uc_digits; | |
33 return; | |
34 } | |
35 | |
36 if(substr($string[0],0,1) != "'" && !preg_match("!\d!",$string[0]) || $_uc_digits) | |
37 return ucfirst($string[0]); | |
38 else | |
39 return $string[0]; | |
40 } | |
41 | |
42 | |
43 ?> |