ASCWH

搜索到 46 篇与 php 的结果
03-26

PHP 导入 Excel 时间格式处理

PHP 导入 Excel 时间格式处理
public static function formatExcelTime($time, $format = 'Y-m-d H:i:s') { $formatTime = $time; // 这里要注意 `.` 因为不具体到时间的话,是没有 `.` 的,而具体到时间之后,就有 `.` 了 if (preg_match('/^[\d.]*$/', $time)) { // 正常的时间处理 if (strtotime($time)) { $formatTime = date($format, strtotime($time)); } else { // 如果是 excel 的时间,则另外处理 $formatTime = gmdate($format, ($time - 25569) * 86400); } } re...

PHP

1,121 阅读
03月26日
1,121 阅读
0 评论
11-04

PHP 数据压缩

PHP 数据压缩
/** * 判断字符串是否base64编码 */ function func_is_base64($str) { return $str == base64_encode(base64_decode($str)) ? true : false; } /** * 压缩内容 */ function func_gzcompress($str, $level = 9) { if (!func_is_base64($str)) { return base64_encode(gzcompress($str, $level)); } return $str; } /** * 解压内容 */ function func_gzuncompress($str) { if (func_is_base64($str)) { return gzuncompress(base64_decode($str)); } return $str; }缩的方法除了gzcompress之外,还有gzdeflat...

PHP

1,067 阅读
11月04日
1,067 阅读
0 评论
09-30

PHP 创建推广海报

PHP 创建推广海报
最近工作需求需要生成分享图片,最初用前端js的html2canvas截图插件各种问题,而且多端还不可共用等问题 后来干脆PHP的PG库在后台生成图片,很愉快的解决了各种问题,我们要实现的效果如下图: getimagesize 获取图片的宽高 imagecreatefromjpeg 将图片转换为图片资源型 本次用的是jpeg,更多类型还有jpg、gif等,具体请查百度 imagecreatetruecolor 按照指定宽高画一个图 imagecopyresampled 图片拷贝合并 imagettfbbox 计算文字宽高 imagettftext 将文字放到图片上 imagepng 输出图片 imagedestroy 销毁图片内存 imagecreatetruecolor 创建一块指定宽高的画布 class CreatorImg { public $config; /** * CreateShareImg constructor. */ public function __construct() { $thi...

PHP

1,398 阅读
09月30日
1,398 阅读
0 评论
09-12

PHP 导出百万数据 CSV

PHP 导出百万数据 CSV
最近公司项目要求把数据除了页面输出也希望有导出功能,虽然之前也做过几个导出功能,但这次数据量相对比较大,差不多一天数据就20W条,要求导7天或者30天,那么数据量就轻松破百万了甚至破千万,因此开发的过程中发现了一些大数据导出的坑,在此跟大家分享一下,互相学习,多多提提意见。废话不多说直接上以 ThinkPHP 为例function putCsv($head, $mark = 'user_info', $fileName = "test.csv") { set_time_limit(0); $sqlCount = Db::table('user')->count(); //输出Excel文件头,可把user.csv换成你要的文件名 header('Content-Type: application/vnd.ms-excel;charset=utf-8'); header('Content-Disposition: attachment;filename="' . $fileName . '"');...

PHP

1,154 阅读
09月12日
1,154 阅读
0 评论
06-24

PHP 生成唯一订单号

PHP 生成唯一订单号
首先介绍PHP自带生成唯一id的函数:uniqid(),它是基于当前时间微秒数的,用法如下: //13位的字符串 echo uniqid(); //当然你可以加上前缀 echo uniqid("php_"); //如果第二个参数more_entropy为true则生成23位字符串 echo uniqid("php_", TRUE);但是它生成的标识有可能不是唯一的,所以很多人会://这是第一种简单的方法,当然用sha1()函数也可以。 echo md5(uniqid()); //第二种,利用时间戳的方法 echo md5(time() . mt_rand(1,1000000)); 如果你还担心,可以用更严谨的方法: // 第三种 function create_unique() { $data = $_SERVER['HTTP_USER_AGENT'] . $_SERVER['REMOTE_ADDR'] .time() . rand(); return sha1($data); ...

PHP

959 阅读
06月24日
959 阅读
0 评论
05-16

使用nginx运行thinkphp的nginx配置

使用nginx运行thinkphp的nginx配置
location / { index index.php; #如果文件不存在则尝试TP解析 if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; break; } } location ~ .+\.php($|/) { fastcgi_pass unix:/dev/shm/php-fcgi.sock; #fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; #设置PATH_INFO,注意fastcgi_split_path_info已经自动改写了fastcgi_script_name变量, #后面不需要再改写SCRIPT_FILENAME,SCRIPT_NAME环境变量,所以必须在加载fastcgi.conf之前设置 fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_pa...

PHP

1,370 阅读
05月16日
1,370 阅读
0 评论
04-29

PHP 中 session 的运行机制

PHP 中 session 的运行机制
在PHP中session默认是以文件的形式存储于服务器的而客户端和服务端则是通过session_id来完成握手的,默认情况下PHP会将session_id存储于cookie中,用户每次请求时该session_id都会通过cookie传到服务器,下面是php.ini中的相关配置信息:session.save_path="C:\xampp\tmp" 文件的存储路劲session.use_cookies=1 是否使用cookie存取session_idsession.name=PHPSESSID 存储session_id的键名session.use_only_cookies=0 是否只使用cookie来处理session_id如何改变session的默认存储方式:在php中我们可以通过使用session_set_save_handler函数才改变这种默认方式,该方法有两种形式的重载php < 5.4 : 接受接受6个回调函数来执行session的管理 SessionHandlerInterface打开(open): 接受两个参数:1,文件路劲;2,sessio...

PHP

1,020 阅读
04月29日
1,020 阅读
0 评论
04-29

PHP 抽象类 abstract、抽象方法 (转)

PHP 抽象类 abstract、抽象方法 (转)
1、抽象关键字 :abstract抽象就是无法确切的说明,但又有一定的概念或者名称,在PHP中声明一个抽象类或者方法我们需要使用adstract关键字。2、抽象方法和抽象类的定义一个类中至少有一个方法是抽象的,我们称之为抽象类。所以如果定义抽象类首先定义抽象方法。复制代码 代码如下:abstract class class1{ abstract function fun1(); ……}1、类中至少有一个抽象方法2、抽象方法不允许有{ }3、抽象方法前面必须要加abstract3、抽象类和方法使用规则抽象类的几个特点:1、不能被实例化,只能被继承2、继承的派生类当中要把所有抽象方法重载才能实例化关于抽象方法的声明如下:<?php abstract function fun1(); ?>什么是抽象类呢?只要一个类里面有一个方法是抽象方法,那么这个类就必须定义为抽象类。抽象类也要使用关键字"abstract"来修饰,抽象类不能实例化对象,所以抽象方法作为子类方法重载的模板使用的,且要...

PHP

1,230 阅读
04月29日
1,230 阅读
0 评论
04-29

PHP 接口类 interface

PHP 接口类 interface
接口是什么?使用接口(interface),可以指定某个类必须实现哪些方法,但不需要定义这些方法的具体内容。接口是通过 interface 关键字来定义的,就像定义一个标准的类一样,但其中定义所有的方法都是空的。接口中定义的所有方法都必须是公有,这是接口的特性。什么时候用接口?1、定规范,保持统一性;2、多个平级的类需要去实现同样的方法,只是实现方式不一样接口使用规范接口不能实例化接口的属性必须是常量接口的方法必须是public【默认public】,且不能有函数体类必须实现接口的所有方法一个类可以同时实现多个接口,用逗号隔开接口可以继承接口【用的少】interface usb{ const brand = 'siemens'; // 接口的属性必须是常量 public function connect(); // 接口的方法必须是public【默认public】,且不能有函数体 } // new usb(); // 接口不能实例化 // 类实现接口 class Android implements usb{ public function co...

PHP

1,134 阅读
04月29日
1,134 阅读
0 评论
04-20

PHP、Java、Javascript通用RSA加密

PHP、Java、Javascript通用RSA加密
在系统与系统的数据交互中,有些敏感数据是不能直接明文传输的,所以在发送数据之前要进行加密,在接收到数据时进行解密处理;然而由于系统与系统之间的开发语言不同。本次需求是生成二维码是通过java生成,由php来解密。基于这类需求所以选择了RSA进行加解密。一、生成RSA公私钥分成三步生成RSA公私钥,第1、2步可以满足php的使用,由于java的私钥要转化为PKCS8格式才能使用,所以执行第三步来实现1、生成私钥openssl genrsa -out rsa_private_key.pem 1024 如下:-----BEGIN RSA PRIVATE KEY----- MIICXQIBAAKBgQDOU3dwYw5oh4qzNv7YcgD0gxrqvGv3nFMbBFvXPDVuy/2AZsJC OurkwjveVcq2AdtAc+RD409uwNgrf0f6pxl60cNF81qHujCqmrIjPyyokpXwCjBj L9NlG3RmZ3btN87LDeKvIQt6n85pULOUVyOI7qlCvN8y3zlgsEM41Xqx1wIDAQAB AoGAK0gvIhBlkV/9...

PHP,工具

1,241 阅读
04月20日
1,241 阅读
0 评论
02-19

PHP 统计在线人数的方法

PHP 统计在线人数的方法
<?php $filename = 'online.txt';//数据文件 $cookiename = 'VGOTCN_OnLineCount';//cookie名称 $onlinetime = 60;//在线有效时间,单位:秒 (即600等于10分钟) $online = file($filename); //PHP file() 函数把整个文件读入一个数组中。与 file_get_contents() 类似,不同的是 file() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。如果失败,则返回 false $nowtime = $_SERVER['REQUEST_TIME']; $nowonline = array(); //得到仍然有效的数据 foreach ($online as $line) { $row = explode('|', $line); $sesstime = trim($row[1]); if (($nowtime - $sesstime) <= $onlinet...

PHP

1,253 阅读
02月19日
1,253 阅读
0 评论
12-10

OneinStack PHP多版本共存~~

OneinStack PHP多版本共存~~
《OneinStack》一键PHP/JAVA安装工具中lnmp模式,很用户希望一个网站运行在php5.4,另一个网站运行在php7下,一台服务器上同时支持多个PHP版本,步骤如下:1、 安装 OneinStack选择 LNMP 模式,默认安装 php5.6,安装步骤参考:交互式安装 或者 自动安装选项如下:Install Nginx Do not install Apache Do not install Tomcat Install MySQL-5.7 Install php-5.6 …. …. 2、 安装php7service php-fpm stop #后面需要再安装php,需要停止phpmv /etc/init.d/php-fpm{,_bk} #后面需要再安装php会覆盖,备份启动脚本默认php5.6安装路径是/usr/local/php,如果再次安装会提示php已经安装,因此必须修改options.conf的php安装目录,将php7安装路径设置为/usr/local/php7,修改文件/root/oneinstack/options.conf:php_install_...

PHP,LINUX,工具

1,295 阅读
12月10日
1,295 阅读
0 评论
10-20

PHP 中文分词系统 SCWS安装和使用实例

PHP 中文分词系统 SCWS安装和使用实例
SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。这是一套基于词频词典的机械式中文分词引擎,它能将一整段的中文文本基本正确地切分成词。 词是中文的最小语素单位,但在书写时并不像英语会在词之间用空格分开, 所以如何准确并快速分词一直是中文分词的攻关难点。SCWS 采用纯 C 语言开发,不依赖任何外部库函数,可直接使用动态链接库嵌入应用程序, 支持的中文编码包括 GBK、UTF-8 等。此外还提供了 PHP 扩展模块, 可在 PHP 中快速而方便地使用分词功能。分词算法上并无太多创新成分,采用的是自己采集的词频词典,并辅以一定的专有名称,人名,地名, 数字年代等规则识别来达到基本分词,经小范围测试准确率在 90% ~ 95% 之间, 基本上能满足一些小型搜索引擎、关键字提取等场合运用。首次雏形版本发布于 2005 年底。SCWS 由 hightman 开发, 并以 BSD 许可协议开源发布,源码托管在 github。安装步骤# wget -c http://www.xunsearch.com/scws/down/sc...

PHP

1,352 阅读
10月20日
1,352 阅读
0 评论
09-17

PHP Trait 多重继承的实现方案

PHP Trait 多重继承的实现方案
自 PHP 5.4.0 起,PHP 实现了代码复用的一个方法,称为 traits。Traits 是一种为类似 PHP 的单继承语言而准备的代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用方法集。Traits 和类组合的语义是定义了一种方式来减少复杂性,避免传统多继承和混入类(Mixin)相关的典型问题。Trait 和一个类相似,但仅仅旨在用细粒度和一致的方式来组合功能。Trait 不能通过它自身来实例化。它为传统继承增加了水平特性的组合;也就是说,应用类的成员不需要继承。在我理解说白了就是在继承类链中隔离了子类继承父类的某些特性(就是子类“要用父类的特性的时候”,如果trait有,就优先调用trait的方法、属性等)。trait MyTrait { protected $var = "MyTrait_var"; protected $var1 = "MyTrait_var"; function __construct() { echo $...

PHP

1,292 阅读
09月17日
1,292 阅读
0 评论

人生倒计时

今日已经过去小时
这周已经过去
本月已经过去
今年已经过去个月

今日天气

少数派热文榜

  • 获取失败!

标签云