Yii2里自定义函数的保存位置和使用方法
2016-09-27 14:18
393 查看
以
在
命名空间一定要写好:
然后就可以愉快的写自定义函数(建议函数都用静态的)了
使用的时候只需要引入进来就行
其他位置的使用方法都一样,只是改一下命名空间
advanced版本为例。假如要在
frontend里放一个获取用户操作系统的函数
get_os
在
frontend下新建一个目录
helpers,新建文件
CustomFun.php
命名空间一定要写好:
namespace frontend\helpers;
然后就可以愉快的写自定义函数(建议函数都用静态的)了
使用的时候只需要引入进来就行
use frontend\helpers\CustomFun,使用方法跟其他yii的一样。
<?php namespace frontend\helpers; class CustomFun { /** * 获取客户端操作系统信息包括win10 * @return string */ public static function get_os(){ $agent = $_SERVER['HTTP_USER_AGENT']; $os = false; if (preg_match('/win/i', $agent) && strpos($agent, '95')) { $os = 'Windows 95'; } else if (preg_match('/win 9x/i', $agent) && strpos($agent, '4.90')) { $os = 'Windows ME'; } else if (preg_match('/win/i', $agent) && preg_match('/98/i', $agent)) { $os = 'Windows 98'; } else if (preg_match('/win/i', $agent) && preg_match('/nt 6.0/i', $agent)) { $os = 'Windows Vista'; } else if (preg_match('/win/i', $agent) && preg_match('/nt 6.1/i', $agent)) { $os = 'Windows 7'; } else if (preg_match('/win/i', $agent) && preg_match('/nt 6.2/i', $agent)) { $os = 'Windows 8'; }else if(preg_match('/win/i', $agent) && preg_match('/nt 10.0/i', $agent)) { $os = 'Windows 10';#添加win10判断 }else if (preg_match('/win/i', $agent) && preg_match('/nt 5.1/i', $agent)) { $os = 'Windows XP'; } else if (preg_match('/win/i', $agent) && preg_match('/nt 5/i', $agent)) { $os = 'Windows 2000'; } else if (preg_match('/win/i', $agent) && preg_match('/nt/i', $agent)) { $os = 'Windows NT'; } else if (preg_match('/win/i', $agent) && preg_match('/32/i', $agent)) { $os = 'Windows 32'; } else if (preg_match('/linux/i', $agent) && preg_match('/Android/i', $agent)) { $os = 'Android'; } else if (preg_match('/unix/i', $agent)) { $os = 'Unix'; } else if (preg_match('/sun/i', $agent) && preg_match('/os/i', $agent)) { $os = 'SunOS'; } else if (preg_match('/ibm/i', $agent) && preg_match('/os/i', $agent)) { $os = 'IBM OS/2'; } else if (preg_match('/Mac/i', $agent) && preg_match('/PC/i', $agent)) { $os = 'Macintosh'; } else if (preg_match('/PowerPC/i', $agent)) { $os = 'PowerPC'; } else if (preg_match('/AIX/i', $agent)) { $os = 'AIX'; } else if (preg_match('/HPUX/i', $agent)) { $os = 'HPUX'; } else if (preg_match('/NetBSD/i', $agent)) { $os = 'NetBSD'; } else if (preg_match('/BSD/i', $agent)) { $os = 'BSD'; } else if (preg_match('/OSF1/i', $agent)) { $os = 'OSF1'; } else if (preg_match('/IRIX/i', $agent)) { $os = 'IRIX'; } else if (preg_match('/FreeBSD/i', $agent)) { $os = 'FreeBSD'; } else if (preg_match('/teleport/i', $agent)) { $os = 'teleport'; } else if (preg_match('/flashget/i', $agent)) { $os = 'flashget'; } else if (preg_match('/webzip/i', $agent)) { $os = 'webzip'; } else if (preg_match('/offline/i', $agent)) { $os = 'offline'; } else { $os = '其他操作系统'; } return $os; } }
其他位置的使用方法都一样,只是改一下命名空间
相关文章推荐
- Thinkphp模板中使用自定义函数的方法
- ThinkPHP模板中使用自定义函数的方法
- MySQL的存储函数(自定义函数)的定义和使用方法
- 百度文本编辑器上传附件自定义上传方法(自定义上次保存的位置)
- Thinkphp模板中使用自定义函数的方法
- [Q]如何使用自定义保存位置
- Thinkphp模板中使用自定义函数的方法,在参数中使用函数
- QT自定义函数使用UI控件的简单方法
- Thinkphp模板中使用自定义函数的方法
- 如何更改Internet临时文件保存位置(最全的方法,特别适合使用RamDisk的用户)
- Thinkphp 模板中使用自定义函数的方法
- juicer自定义函数使用方法(随便你用!!!)
- AJAX 的DragPanelExtender 拖曳控件使用,并保存位置(此方法思路可将坐标保存到数据库)
- 使用百度ueditor在上传图片的时候自定义保存图片位置
- Thinkphp模板中使用自定义函数的方法
- 关于自定义比较函数 usort 如何使用 类中的方法
- [Yii2]自定义注册功能时,使用自己的类替换user类,出现 table no found 解决方法
- 使用ReadPixels方法,实现对游戏截取任意位置的屏幕,以及保存和显示截取结果
- yii2使用Model无刷新验证rule自定义方法
- MySQL的存储函数(自定义函数)的定义和使用方法