四时宝库

程序员的知识宝库

服务端主动推送消息SSE PHP+js(服务端主动推送消息给前端)


1、php服务端代码

<?php
header('X-Accel-Buffering: no');
header('Content-Type: text/event-stream');
header('Cache-Control: no-cache');
set_time_limit(0); //防止超时
ob_end_clean(); //清空(擦除)缓冲区并关闭输出缓冲
ob_implicit_flush(1); //这个函数强制每当有输出的时候,即刻把输出发送到浏览器。这样就不需要每次输出(echo)后,都用flush()来发送到浏览器了
while(1) {
	$time = date('Y-m-d H:i:s');
	$c = "retry:1000" . PHP_EOL; //重试毫秒数
	$c = "event:my_test_message" . PHP_EOL; //定义事件
	$c .= "data: The server time is: {$time}" . PHP_EOL; //推送内容
	echo $c . PHP_EOL;
	sleep(3);
}

php 导出excel(Php导出excel写入图片)

在很多项目中,都要进行一些统计,统计的数据要导出到excel中,在某些浏览器中中文名会出现乱码,下面的方法是将数据处理好导出excel,并对文件名处理不乱码。

public function outputExcel($PHPExcel, $filename) {
 //按照指定格式生成Excel文件,'Excel2007'表示生成2007版本的xlsx
	$PHPWriter = PHPExcel_IOFactory::createWriter($PHPExcel, 'Excel2007'); 
 	$ua = $_SERVER['HTTP_USER_AGENT'];
	$ua = strtolower($ua);
 //判断是否为IE或Edge浏览器
	if (preg_match('/msie/', $ua) || preg_match('/edge/', $ua) || preg_match('/trident/', $ua)) { 
 //使用urlencode对文件名进行重新编码
		$filename = str_replace('+', '%20', urlencode($filename)); 
	}
	//2、浏览器保存
	ob_end_clean();
	header("Pragma: public");
	header("Expires: 0");
	header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
	header("Content-Type:application/force-download");
	header("Content-Type:application/octet-stream");
	header("Content-Type:application/download");
 //告诉浏览器输出07Excel文件
	header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); 
 //告诉浏览器输出浏览器名称
	header('Content-Disposition: attachment;filename=' . $filename . '.xlsx'); 
	header('Cache-Control: max-age=0'); //禁止缓存
	header("Content-Transfer-Encoding:binary");
	$PHPWriter->save("php://output");
	exit;
}

vBulletin中的高危漏洞正在被用来构建僵尸网络


据悉,网络攻击者正在大规模利用由一个匿名者所披露的漏洞,它可让vBulletin服务器被非法接管。vBulletin是互联网上最流行的网站评论应用之一,而现在它正遭受严重的安全威胁,所有vBulletin服务器管理员应尽快安装好vBulletin开发者于周三上午发布的补丁。

「PHPExcel」读取EXCEL中的图片并保存到本地的方法

直接上代码:

源代码:

//导入测试
$source_file = FILENAME.'test/imgTest.xls';
$imgPath = FILENAME.'img/'.date('Ymd').'/';
if(!file_exists($imgPath)){
mkdir($imgPath);
}
$objPHPExcel = new \PHPExcel();
$objReader = PHPExcel_IOFactory::createReader('Excel5'); //加载2003的
$objPHPExcel = $objReader->load($source_file); //载入文件
foreach ($objPHPExcel->getSheet(0)->getDrawingCollection() as $k => $drawing) {
$codata = $drawing->getCoordinates(); //得到单元数据 比如G2单元
echo $codata.'</br>'; //输出图片所在位置
$filename = $drawing->getIndexedFilename(); //文件名
ob_start();
call_user_func(
$drawing->getRenderingFunction(),
$drawing->getImageResource()
);
$imageContents = ob_get_contents();
file_put_contents($imgPath.$filename,$imageContents); //把文件保存到本地
ob_end_clean();
}
die;
//导入测试结束

Wordpress实现调用一篇文章的第一张图片

在HTML中很多时候会有鼠标滑动至一个文章标题或链接然后使得该篇文章的图片显示,这个可以通过jQuery来实现,而在通过wordpress管理后台当中,也可以通过一段代码来简单实现。

html代码的简单样式

<div class="col-md-7" style="margin: 10px auto;" >

Swoole使用GD输出图片(swoole debug)

要使用Swoole和GD库输出图片,你可以使用GD库的函数生成图片,然后将生成的图片数据输出到Swoole的Response对象中。

以下是一个示例代码:

PHP输出缓冲控制介绍(php输出流)

PHP输出缓冲控制可以解决程序先输出数据,后输出头部信息的问题。比如,下面的程序

未打开缓冲区之前的程序

在不打开缓冲区的情况下会报出如下警告:

因为header()函数会发送一段头信息给浏览器,而在给浏览器发送头信息之前不能有任何输出的,否则就会出现上面的警告!

php的PDO操作(php pop)

这篇文章主要介绍了关于php的PDO操作 ,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

PHP 数据对象

简介

安装/配置

需求

安装

运行时配置

资源类型

预定义常量

连接与连接管理

页面静态化如何实现(页面静态话)

随着网站的内容的增多和用户访问量的增多,无可避免的是网站加载会越来越慢,受限于带宽和服务器同一时间的请求次数的限制,我们往往需要在此时对我们的网站进行代码优化和服务器配置的优化。

一般情况下会从以下方面来做优化

1、动态页面静态化

2、优化数据库

PHP实现微信H5支付(php微信h5支付apiv3的demo)

开发前配置

进行代码接入前,需在微信后台填写授权回调域名,此域名必须经过ICP备案

开发主要流程

<< < 2 3 4 5 6 7 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接