filipajdacic / yii2-helpers
这是一组实用的助手函数集合,打包用于Yii2框架。这将为您节省大量时间。
dev-master
2019-02-22 08:33 UTC
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2024-09-14 19:25:42 UTC
README
这是一组实用的助手函数集合,打包用于Yii2框架。这将为您节省大量时间。
安装
安装此扩展的首选方法是通过composer。
运行
php composer.phar require --prefer-dist filipajdacic/yii2-helpers "*"
或者在您的composer.json
文件的require部分添加
"filipajdacic/yii2-helpers": "*"
。
使用方法
扩展安装完成后,只需在配置文件中添加以下内容即可在代码中使用它:
'components' => array( ... 'Helpers' => array( 'class' => 'filipajdacic\yii2helpers\Helper', ), ... );
示例
- validateEmail() - 验证电子邮件地址
$email = "example@mail.com"; $validate = Yii::$app->Helpers->validateEmail($email); if($validate) { echo 'Mail is Valid!'; } else { echo 'Email is not Valid!'; }
- encodeEmail() - 将特定电子邮件地址编码为HTML实体,以便垃圾邮件机器人无法找到。
$email = "example@mail.com"; $encodedEmail = Yii::$app->Helpers->encode_email($email, 'Contact Me', 'class="emailencoder"'); echo "You can feel free to ".$encodedEmail;
-
highlight_text() - 当用户搜索某物并在结果中看到其关键字突出显示时,这对用户来说变得方便。
$text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque condimentum, augue vel finibus suscipit, erat lacus mollis urna, nec placerat nibh ex non felis. Morbi sit amet imperdiet dui. Lorem, Praesent pharetra sed orci in mollis. Pellentesque consectetur, turpis eu imperdiet feugiat, ipsum diam semper libero, eget mollis quam odio ullamcorper ligula. "; $highlighted_text = Yii::$app->Helpers->highlight_text($text, "Lorem", '#4285F4') echo'<h2>Your search results for word: <b>Lorem</b> are highlighted:</h2> <Br>'; echo '<span>'.$highlighted_text.'</span>';
-
truncateText() - 您可以截断文本并指定要显示的字符数。它还支持在截断字符串的末尾添加后缀(例如:阅读更多..)
$text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque condimentum, augue vel finibus suscipit, erat lacus mollis urna, nec placerat nibh ex non felis. Morbi sit amet imperdiet dui. Lorem, Praesent pharetra sed orci in mollis. Pellentesque consectetur, turpis eu imperdiet feugiat, ipsum diam semper libero, eget mollis quam odio ullamcorper ligula. "; $short_version = Yii::$app->Helpers->truncateText($text, 30, ' read more...'); echo '<div id="short_version_news">'; echo '<span>'.$short_version.'</span>'; echo '</div>';
-
cleanText() - 此函数通过删除不需要的标签来清理任何文本。您可以使用此函数筛选例如textarea值并删除不需要的标签。
$commentBody = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Quisque condimentum, augue vel finibus suscipit, erat lacus mollis urna, nec placerat nibh ex non felis. Morbi sit amet imperdiet dui. <script> alert('I am hacker!'); </script> or <a href='virus.html'>Click here to see my picture </a>' "; $comment_cleared = Yii::$app->Helpers->clearText($commentBody); echo '<div id="news-comment-1">'; echo '<span>'.$comment_cleared.'</span>'; echo '</div>';
- generateSlug() - 如果您想要生成干净的URL别名,此函数非常有用。
$post_title = "Hey this Helpers will really help you!"; $url_slug = Yii::$app->Helpers->generateSlug($post_title); echo "<a href='/posts/".$url_slug."'>".$post_title."</a>";
- getTinyurl(); - 使用TinyUrl进行网址缩短,为提供的长URL返回TinyUrl缩短URL。
$raw_url = "https://github.com/filipajdacic"; $tiny = Yii::$app->Helpers->getTinyurl($raw_url); echo $tiny;
- base64url_encode(); - 将URL字符串编码为Base64 URL。
$url = "http://github.com/filipajdacic"; $encoded_url = Yii::$app->Helpers->base64_encode($url); // output will be: aHR0cDovL2dpdGh1Yi5jb20vZmlsaXBhamRhY2lj
- base64url_decode(); - 将Base64 URL解码为纯文本。
$url = "aHR0cDovL2dpdGh1Yi5jb20vZmlsaXBhamRhY2lj"; $decoded_url = Yii::$app->Helpers->base64_decode($url); // output will be: http://github.com/filipajdacic
- timeAgo(); - 此函数将日期和时间字符串转换为xx时间之前。以yyyy-mm-dd hh:ii:ss的格式提供日期和时间字符串,它将返回时间之前。
$post_created_on = "2016-06-11 11:04:32"; $post_created_on_ago = Yii::$app->Helpers->timeAgo($post_created_on); // output will be: 6 months ago // But if you try like this: $post_created_on_ago = Yii::$app->Helpers->timeAgo($post_created_on,true); // output will be: 6 months 1 week, 23 hours, 51 minutes, 21 seconds ago
- showYoutube(); - 此函数将所有YouTube链接替换为视频对象(iframe)。
$youtube_link = "https://www.youtube.com/watch?v=L7oo21yfl7s"; $youtube_player = Yii::$app->Helpers->showYoutube($youtube_link); echo $youtube_player;
- showVimeo(); - 此函数将所有Vimeo链接替换为视频对象(iframe)。
$vimeo_link = "https://vimeo.com/ondemand/indiegamethemovie/84887593"; $vimeo_player = Yii::$app->Helpers->showVimeo($vimeo_link); echo $vimeo_player;
- showGravatar(); - 获取指定电子邮件地址的Gravatar URL或完整的图像标签。
$email = "ajdasoft@gmail.com"; $gravatar = Yii::$app->Helpers->showGravatar($email); echo "<div id="profile_picture">"; echo "<img src='".$gravatar."'> </img>"; echo "</div>";
- showIP(); - 此函数获取真实IP地址。
$ip_address = Yii::$app->Helpers->showIP(); echo "Your IP address is:".$ip_address;
- qr_code(); - 此方法可用于生成QR码图像。
$link = "http://github.com/filipajdacic"; $qr_link = Yii::$app->Helpers->qr_code($link, 'URL'); $email = "ajdasoft@gmail.com"; $qr_email = Yii::$app->Helpers->qr_code($email, 'EMAIL'); $telephone = "+3816122233331"; $qr_phone = Yii::$app->Helpers->qr_code($telephone, 'TEL'); $text = "See ya! How are you?"; $qr_text = Yii::$app->Helpers->qr_code($text, 'TXT');
- getDistanceBetweenCordinates(); - 此方法可用于计算两个坐标之间的距离。
$lat_1 = '44.8014766'; $long_1 = '20.4516869'; $lat_2 = '44.7188265'; $long_2 = '21.1762609'; $distance = Yii::$app->Helpers->getDistanceBetweenCoordinates($lat_1, $long_1, $lat_2, $long_2); foreach ($distance as $unit => $value) { echo $unit.': '.number_format($value,4).'<br />'; }
- pre_dump(); - 美化输出。
$data = array("One", "Two", "Three"); Yii::$app->Helpers->pre_dump($data);
版本
1.0 许可证
MIT