在项目中经常用到的一些公共方法。
一个好的程序员 要学会去收集一些公共类库,
function get_client_ip() {
if(getenv("HTTP_CLIENT_IP")) {
$onlineIP = getenv("HTTP_CLIENT_IP");
} elseif(getenv("HTTP_X_FORWARDED_FOR")) {
$onlineIP = getenv("HTTP_X_FORWARDED_FOR");
} elseif(getenv("REMOTE_ADDR")) {
$onlineIP = getenv("REMOTE_ADDR");
} else {
$onlineIP = $_SERVER['REMOTE_ADDR'];
}
return $onlineIP;
}
function formattime($num) {
$arr["hour"]="00";
if($num>=3600)
{ //小时
$arr["hour"] = sprintf("%d",($num/3600));
$num -= $arr['hour']*3600;
if($arr["hour"]<10){
$arr["hour"]="0". $arr["hour"];
}
}
$arr["minute"]="00";
if($num>=60)
{ //分
$arr["minute"] = sprintf("%d",($num/60));
$arr["second"] = sprintf("%d",$num-$arr['minute']*60);
if($arr["minute"]<10){
$arr["minute"]="0". $arr["minute"];
}
if($arr["second"]<10){
$arr["second"]="0". $arr["second"];
}
}
$arr['second']="00";
if($num<60&&$num>0){ $arr["second"] = $num;
if($arr["second"]<10){
$arr["second"]="0". $arr["second"];
}
}
return $arr["hour"].":".$arr["minute"].":".$arr["second"];
}
function cut_str($string, $sublen, $start = 0, $code = 'UTF-8'){
if($code == 'UTF-8'){
$pa = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/";
preg_match_all($pa, $string, $t_string);
//print_r($t_string);
$i=$sublen;
foreach($t_string[0] as $k=>$chr){
//echo ord($chr)."<hr>";
//echo 'this'.$k.'this';
if(ord($chr)<=127&&$k<$i){
//echo 'hello<hr>';
if(ord($chr)>65&&ord($chr)<91){
}else{
$sublen++;
}
}
}
//echo $string.'<hr>'.$sublen.'<hr>';
if(count($t_string[0]) - $start > $sublen) {
return join('', array_slice($t_string[0], $start, $sublen))."...";
}else{
return join('', array_slice($t_string[0], $start, $sublen));
}
}else{
$start = $start*2;
$sublen = $sublen*2;
$strlen = $strlen($string);
$tmpstr = '';
for($i=0; $i< $strlen; $i++)
{
if($i>=$start && $i< ($start+$sublen))
{
if(ord(substr($string, $i, 1))>129)
{
$tmpstr.= substr($string, $i, 2);
}
else
{
$tmpstr.= substr($string, $i, 1);
}
}
if(ord(substr($string, i, 1))>129) $i++;
}
if(strlen($tmpstr)< $strlen ) $tmpstr.= "...";
return $tmpstr;
}
}
function setupSize($fileSize) {
//$fileSize=$fileSize*130.26;
$size=floatval($fileSize);
if($size == 0) {
return("0 Bytes");
}
$sizename = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");
$i = floor(log($size, 1024));
//echo '<hr>'.$i;
return round($size/pow(1024, $i), 2). $sizename[$i];
}
/**
* 提示页面
* 对于程序内部出现的错误或者是用户操作的错误都可以以
* 此页面来提示。
* @param unknown_type $msg
* @param unknown_type $type
* time 跳转时间 秒
* url 跳转地址
* 错误的级别 是程序内部的错误还是用户操作的错误
* 来区分展示的不同的页面
*
*/
function showmsg($msg, $type, $time = 10, $url = "admin.php?a=dashboard") {
echo '<html><head><meta http-equiv="Content-Type" content="text/html;charset=utf-8">';
//echo '<meta http-equiv="refresh" content="'.$time.';url='.$url.'"> ';
echo '<title>信息提示页面</title></head>';
echo '<link href="public/css/style.css" rel="stylesheet" type="text/css" />';
echo '<body>';
if ($type == 0) {
echo '<div class="successaction">';
} else {
echo '<div class="failaction">';
}
echo '<h1>' . $msg . '</h1>';
echo '将于<span id="totalSecond" style="font-size:16pt; color:blue">' . $time . '</span>秒钟后自动跳转到新的页面!如果你没有<a href="' . $url . '">点击跳转</a>';
echo '<script language="javascript" type="text/javascript">';
echo 'var second = document.getElementById("totalSecond").textContent;
if (navigator.appName.indexOf("Explorer") > -1) {
second = document.getElementById("totalSecond").innerText;
} else {
second = document.getElementById("totalSecond").textContent;
}
setInterval("redirect()", 1000);
function redirect() {
if (second < 0) {
location.href = "' . $url . '";
} else {
if (navigator.appName.indexOf("Explorer") > -1) {
document.getElementById("totalSecond").innerText = second--;
} else {
document.getElementById("totalSecond").textContent = second--;
}
}
}
</script>';
echo '</body></html>';
die ();
}
分享到:
相关推荐
/*获得客户端ip地址*/ function getIP() { if(getenv(“HTTP_CLIENT_IP”) && strcasecmp(getenv(“HTTP_CLIENT_IP”),”unknown”)) { $ip = getenv(“HTTP_CLIENT_IP”); } else if(getenv(...
│ ├alipay_core.function.php ┈┈┈┈┈┈支付宝接口公用函数文件 │ │ │ ├alipay_notify.class.php┈┈┈┈┈┈┈支付宝通知处理类文件 │ │ │ ├alipay_submit.class.php┈┈┈┈┈┈┈支付宝各接口...
* 允许程序员在不同的脚本中使用公用的记住类的接口,无需担心变量的名字。 * 抽象和封装使程序员之间可以共享代码。 * 类和对象的继承性使程序员非常容易地在一个类上增加新的功能。 PHP 中类的应用 在 PHP 中,...
前后台公用类就是在整个网站的开发过程中,前后端都可能会用到的一些功能类,比如数据库操作类、邮件发送类、缓存操作类等。通过公用类的构建,我们可以避免重复编写同样的代码,使得代码的维护和升级变得更加高效。...
在前端开发中,静态页面实现 include 引入公用代码是非常常见的需求,今天我们就来分享一下静态页面实现 include 引入公用代码的示例。 首先,让我们来看一下传统的 PHP include 函数实现静态页面引入公用代码的...
- `Functions.inc.php`:公用函数库。 - `OtherFunction.inc.php`:特定应用的函数库。 - `Setup.inc.php`:参数变量初始化。 4. `Html`:前端资源文件夹,包含图片、CSS样式表和JavaScript等。 - `Images`:...
php //+————————+ //| pie3dfun.PHP//公用函数 | //+————————+ define(“ANGLE_STEP”, 3); //定义画椭圆弧时的角度步长 define(“FONT_USED”, “C:\WINDOWS\Fonts\simhei.ttf”); // 使用到的字体...
### 2-易仓_PHP开发指南 #### 框架说明与注意事项 ##### 框架概述 ...此外,还强调了在实际开发过程中应注意的一些细节问题,如避免对核心公共方法进行修改、合理使用缓存技术以及确保代码的兼容性等。
了解了这三个函数的工作原理后,我们可以轻松地在项目中使用它们来处理日期。例如,如果我们想在网站上显示最近三天的日期,可以这样写: ```php $yesterday = get_last_date(); $today = get_today_date(); $...
php /********************************************************************* * 公用函数列表 * ubb,getip,GoIn,goback,IsInt,InString * OurHome:http://iwind.org * http://10.13.31.90/~coldwind * * */ ...
在主题的functions.php文件中加入如下代码: function jquery_cdn() { if (!is_admin()) { wp_deregister_script('jquery'); wp_register_script('jquery', '...
- **function.php**:包含公用函数,如控制器、模型和视图的调用函数。 ```php // 控制器调用函数 function C($name, $method){ require_once('libs/Controller/'.$name.'Controller.class.php'); eval('$obj = ...
UCHOME的执行过程涉及到多个组件的协同工作,从用户请求到页面渲染,整个流程环环相扣。当用户访问一个页面时,UCHOME会先检查是否有对应的缓存文件,如果存在则直接返回缓存内容;若无,则会调用相关函数处理业务...
├alipay_function.php┈┈┈┈┈公用函数类文件 │ ├alipay_notify.php┈┈┈┈┈┈支付宝通知处理类文件 │ ├log.txt┈┈┈┈┈┈┈┈┈┈┈日志文件 │ ├alipay_config.php┈┈┈┈┈┈基础信息配置...
│ ├alipay_core.asp┈┈┈┈┈┈┈┈┈┈┈┈支付宝接口公用函数文件 │ │ │ ├alipay_md5.asp ┈┈┈┈┈┈┈┈┈┈┈┈MD5签名函数文件 │ │ │ ├alipay_notify.asp┈┈┈┈┈┈┈┈┈┈┈支付宝通知...
将ServiceProvider添加到app / config / app.php中的providers数组中'TSF\ElfinderLaravel\ElfinderServiceProvider' 您需要使用以下artisan命令将资产复制到公用文件夹: php artisan asset:publish tsf/elfinder-...