预览模式: 普通 | 列表

PHP BOM头导致COOKIE无法输出

带BOM头的UTF8文件, 其文件头部占三个字节(0xEF 0xBB 0xBF). 现在有很多的编辑器都可以识别BOM头了, 但还是有一些不能. 比如说PHP就无法识别这个标记. 所以PHP执行的时候会把它当作非PHP脚本直接输出. 

而由于http协议限制setcookie是必需在所有的内容发送调用, 只要有任何的空白内容在setcookie执行之前执行了setcookie将会报一个warning, 且不会输出任何COOKIE

 

这么明显的问题在开发的时候一定会被发现, 但是, 但是, 但是(关键点)很多人调用setcookie时加了一个@符号号来关闭一个函数调用的输出. 

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 4625

curl设置代理

设置SOCK5代理

curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_SOCKS5);
curl_setopt($ch, CURLOPT_PROXY, "127.0.0.1:1080");

设置HTTP代理

curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, "http://127.0.0.1:1080");

 

 

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 5810

Windows版Docker体验

 不久前发现Docker可以原生支持Windows了(目前仅支持64位windows10),安装了一个来体验. 此前是需要搞一个Vbox跑虚拟机的.

获取地址: http://www.docker.com/products/overview

因为我开发一般需要用到lnmp环境, 就准备搞一个这样的容器. 没有用hub上面现成的镜像, 自己在centos6的镜像上派生了一个.  因为docker的网络是基于nat的, 所以也做了端口映射. 另外把本地的一个开发目录挂载到nginx的html目录. 这样基本上就算完工了.

虽然给容器指定了2G内存, 但实际上容器并不会像虚拟机一样把所有的内存事先分配掉. 所有的内存是共享的, 未分配的内存宿主机依然可以拿来做其它的用途. 这是容器明显优于虚拟机的地方.

查看更多...

分类:WEB服务器 | 固定链接 | 评论: 0 | 查看次数: 7089

贴吧自动删贴怎么办

 百度贴吧在百度系的产品里权重算是比较高的, 有时还可以给我们带来不少的流量. 但是当我们刚发完贴去看主题列表, 经常会发现没有我们刚发的帖子. 这种情况十有八九是被百度系统给删除了. 

百度贴吧有一套自动扫描系统, 新发的帖子都会经过这个系统的过滤. 但是实际上这个系统真的很傻B, 有时候正常发贴会被删, 发一些无意义的东西甚至广告却啥事没有.

实际上大小吧主看到我们发贴是很高兴的,基本上不太会随意删除. 我们主要要对付的就是百度的这套自动过滤系统.

好的, WEB应用开发网来教你怎么对付这套人工智能

查看更多...

分类:智慧人生 | 固定链接 | 评论: 0 | 查看次数: 15509

工欲善其事必先利其器, 没有良好的装备,怎么在各种微信群里面抢得到红包呢? 你有足够高端的手机, 也有足够快的网速, 还有一根灵敏的手指和一双敏锐的魔眼, 只能说你比较有优势,却未必就能在千军万马中抢到红包。你不可能每时每刻都盯着手机吧?你总得从裤兜里掏出手机, 再打开微信才能抢到吧?而在这个时候, 有的人, 就是在手机发出“叮咚”一声的时候,手机还在裤兜里就已经完成了抢红包。

完成自动抢红包需要一些软件, 但这些东西并不复杂,还都是免费的。网络上都可以找到。

查看更多...

分类:下载专区 | 固定链接 | 评论: 0 | 查看次数: 15802

微信支付接口开发 视频教程

## Part1

 
### 准备工作:
 
0. 注册公众号
1. 认证公众号
2. 开通微信支付
3. 取得公众号appid & secret
4. 取得微信支付 商户号 & paysecret & 支付证书
 
### 步骤:
 
0. 取得用户的openid
1. 创建商户自己的订单
2. 统一下单
3. H5调起支付API
4. 处理支付通知(成功/失败)
 
### 安全性
 
微信支付整个过程中是否存在不安全性

## Part2
 
微信支付中的各种坑

## Part3
 
PHP实战开发
分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 16219

58同城访问过频繁验证码突破

 58同城数据还是挺多的,很多人可能需要通过抓取58同城的数据来作为第一批种子数据。这非常可行。但是如果你抓取的速度过于频繁,会出现下面这张页面。

 

对于出现这张页面之后可能就没有办法继续访问了,只有更换ip。

查看更多...

分类:网络安全 | 固定链接 | 评论: 0 | 查看次数: 18335

12306验证码识别接口

 准确率大概在90以上,速度不到0.5秒。纯机器识别,人机配合维护图片库。

需要的联系我QQ:593953978。 

查看更多...

分类:智慧人生 | 固定链接 | 评论: 0 | 查看次数: 23962

Windows安装64位NumPy和SciPy包

 到这个网站下载whl文件

http://www.lfd.uci.edu/~gohlke/pythonlibs/

注意下载和自己的python对应的版本

如何安装whl文件:

pip install whatever.whl
分类:python | 固定链接 | 评论: 0 | 查看次数: 43154

PHP图片处理库 Intervention Image

 操作图片比较方便。要求PHP5.4以上,有fileinfo扩展。图片处理驱动可以是GD也可以是imagick, 也就是说这两个扩展也必需安装其一。

// include composer autoload
require "vendor/autoload.php';

// import the Intervention Image Manager Class
use Intervention\Image\ImageManager;

// create an image manager instance with favored driver
$manager = new ImageManager(array('driver' => 'imagick'));

// to finally create image instances
$image = $manager->make('public/foo.jpg')->resize(300, 200);
分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 44846

腾讯云乱扣费 腾讯云账户欠费 

使用腾讯云产品的同学千万要注意了,使用之前一定要仔细阅读它们的用户使用协议,使用之前一定要仔细阅读它们的用户使用协议,使用之前一定要仔细阅读它们的用户使用协议,重要的话要说三遍,否则有一天你会发现你的房子,车子全归腾讯所有了。虽然我知道大多数人连看都不会看那协议一眼,由此可见腾讯是多么的无耻,阴险,利用广大善良同胞对互联网公司基本的信任赚钱。

下面我就把我遇到的情况写出来,血的教训啊。

首先公司需要做一个app需要乃至视频通话的功能(下面简称app)。我作为一个程序员呢在百度上找到了腾讯云的“音视频”。大家认为既然是腾讯的东西应该比较靠谱,那就试试。说干就干,我就去腾讯云创建了这么个应用。虽说我知道它是收费的,但我心想我账户里面一分钱都没有,先创建一个大不了不让我用咯。

查看更多...

分类:智慧人生 | 固定链接 | 评论: 0 | 查看次数: 48448

python用socket实现发送和接收一个http请求,自动处理gzip。直接上代码。

# -*- coding: utf-8 -*-

import zlib, socket

conn = socket.create_connection( ("www.zeroplace.cn", 80) );

data = "''GET / HTTP/1.1
Host: www.zeroplace.cn
Accept-Encoding: gzip, deflate
'''

print data

conn.send(data + "\r\n")

recv_data = ""
header = None
body = None
length = 0

headers = {}

buf = conn.recv(1024)

html = ""

while True:
	recv_data += buf
	
	if header is None:
		index = recv_data.find("\r\n\r\n")
		if index >= 0:
			header = recv_data[0:index];
			recv_data = recv_data[index+4:];
			header_lines = header.split("\r\n")
			status_line = header_lines[0]
			print status_line
			for line in header_lines[1:]:
				print line
				line = line.strip("\r\n")
				if len(line) == 0:
					continue
				colonIndex = line.find(":")
				fieldName = line[:colonIndex]
				fieldValue = line[colonIndex+1:].strip()
				headers[fieldName] = fieldValue

			# print headers
			length = int(headers['Content-Length'])

	if header is not None and len(recv_data) >= length:
		break;
	else:
		buf = conn.recv(1024)

if 'Content-Encoding' in headers and headers['Content-Encoding'] == 'gzip' :
	html = zlib.decompress(recv_data, 16+zlib.MAX_WBITS)
else:
	html = recv_data

print html

conn.close()
分类:python | 固定链接 | 评论: 0 | 查看次数: 48816

android NV21转I420

 最近做一个视频流我app,要用android的摄像头采集数据发到远程保存。我之前对视频和流媒体这块没什么研究,找了找资料发现可以这么干:

Camera->MediaCodec->MediaMuxer

摄像头采集这块资料上一般是用YV12,再通信几次copy就转成I420格式了,再把I420的数据喂到MediaCodec。而我的安卓机的摄像头只支持NV21格式的预览编码,找了很久没有找到可用的资料,最后才大概知道了这两者的关系。

YUV相关的我就不说了,与RGB类似的另一种颜色的表示方式,Y表示亮度, UV表示色度。而根据一些人类视觉的特点发现人类对亮度比较敏感对色度比较不敏感。所以提出对每个像素的Y分量进行采样,而对4个像素只进行一组UV分量的采样。就是对4个像素来说,有4个Y、1个U、1个V。这就是yuv420。

查看更多...

分类:android开发 | 固定链接 | 评论: 0 | 查看次数: 51832

 全国各地所有高校名单数据库 全国所有高校排名

查看更多...

分类:下载专区 | 固定链接 | 评论: 0 | 查看次数: 43877

JS跳转隐藏来路referrer

有时候跳转过去不希望别人知道来路,可以用下面这段js实现。

function open_without_referrer(link){
	document.body.appendChild(document.createElement("iframe')).src='javascript:"<script>top.location.replace(\''+link+'\')<\/script>"';
}

原理就是创建了一个新的iframe,在src处设置了一个javascript:xxx来执行一段js,执行的内容就是top.location.replace。

分类:web前端 | 固定链接 | 评论: 0 | 查看次数: 42788

php输出字符串方法集

代码开关如下, 

<?php
$str = "http://www.zeroplace.cn'."\n";

1. echo
echo $str;

2. printf
printf($str);

3 php://output
file_put_contents('php://output', $str); $fp = fopen("php://output", 'w'); fwrite($fp, $str); fclose($fp);

查看更多...

Tags: php

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 43989

yii2查询条件where的基础写法

 yii2提供了很强大的sql构造工具类。基于sql查询主要与的是查询条件,所以我简单的翻译了一下yii2中where子句的写法。

如果是数组,有两种格式:

  • hash表格式: ['列1' => '值1', '列2' => '值2', ...]
  • 操作码模式:[操作码, 操作数1, 操作数2]

hash表格式

通常会产生column1=value1 AND column2=value2 AND ...。如果值是一个数组,会产生一个in表达式。如果值是null, 会产生一个is null

操作码格式

将根据操作码产生SQL表达式。表达式可以是如下:

  • and 所有的操作数表达式全部用and连接
  • or 同上,所有操作数用or连接
  • not 只接受一个操作数
  • between ['between', 'id', 1, 10] 将会产生 id BETWEEN 1 AND 10
  • not between 同上
  • in 第一个操作数是列名,第二个是一个数组或是一个数据库表达式。
  • not in 同上
  • like 第一个操作数是一个列名或一个数据库表达式,第二个操作数是like的表达式。如['like', 'name', 'tester'] will generate name LIKE '%tester%'
  • or like
  • or not like
  • exists 第一个操作数是一个子查询。
  • 其它操作码,比如['>=', 'id', 10]将会产生,id>=10
分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 42666

VS2013 密钥 – 所有版本

 Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9

Visual Studio Premium 2013 KEY(密钥):FBJVC-3CMTX-D8DVP-RTQCT-92494

Visual Studio Professional 2013  KEY(密钥): XDM3T-W3T3V-MGJWK-8BFVD-GVPKY

Team Foundation Server 2013 KEY(密钥):MHG9J-HHHX9-WWPQP-D8T7H-7KCQG

我的是VS Professional (专业版)的找了好久都没找到激活码- -,最终在远景论坛上找到了。不容易啊,买不起正版啊。~

VSKEY

在VS中的 “帮助” >”关于Microsoft Visual Studio”中可以看到你的版本号~  也可以在激活页面看见你的版本号。序列号输进去即可~

分类:c/c++ | 固定链接 | 评论: 0 | 查看次数: 38106

preg_match_all的两种用法

 preg_match_all的作用是把一个字符串中所有与正则表达式匹配的文本提取出来。一般人只知道它的一种用法,其实它还有另外一种用法。首先看它的原型。

int preg_match_all ( string pattern, string subject, array matches [, int flags] )

pattern是正则,subject是待匹配的字符串,matches是匹配的结果。最后一个flag是一个标记。

第一种用法。

<?php
$html = "http://www.zeroplace.cn/default.asp?cateID=28\nhttp://www.zeroplace.cn/default.asp?cateID=27";

$pattern = "/http:\/\/www\.zeroplace\.cn\/default\.asp\?cateID=(\d+)/";

preg_match_all($pattern, $html, $matches);
print_r($matches);

它的输出是:

Array
(
    [0] => Array
        (
            [0] => http://www.zeroplace.cn/default.asp?cateID=28
            [1] => http://www.zeroplace.cn/default.asp?cateID=27
        )

    [1] => Array
        (
            [0] => 28
            [1] => 27
        )

)

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 20081

 yii2 去掉 index.php

 yii2中配置urlManager的enablePrettyUrl为true后,实际上是使用了php中pathinfo的方式来获取路由,所以在路径中会有一个index.php。有一些同学需要更加美化url的会想直接把index.php也去掉。

这在yii2中很好实现,就是配置urlManager的showScriptName属性,这个属性只在enablePrettyUrl为true时才生效。

$config = [
    "id' => 'basic',
    'basePath' => dirname(__DIR__),
    'bootstrap' => ['log'],
    'components' => [
    	'urlManager' => [
    		'enablePrettyUrl' => true,
    		'showScriptName' => false,
    	],
    ]
]
分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 17097
博主QQ: 友情链接请找我
QQ群: 灰色档案
返回顶部 关闭