分类: |

中国ip地址段

 中国ip地址段,写爬虫的时候比较有用,可以防止爬虫爬到国外去(有时候我只需要中国的数据)。

数据来源:http://www.ipaddresslocation.org/ip_ranges/get_ranges.php

上面是一个英文网站,不懂英文的同学可以直接下载附件。

点击下载此文件

查看更多...

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

git部分常用命令图示

 git是一个版本控制软件,在WEB应用开发中非常有用,这里就不多介绍了。

在git中对文件的修改往往会存在于三个“地方”: 工作区,暂存区和版本库。有一些命令使被修改的文件在这三者之间转移。有时经常会搞乱,所以我画了一个图来表示这些命令(下列所有的命令均为git命令)。

git命令图形化表示

用虚线表示的是文件的比较,用带箭头的实线表示的是文件的转移。

查看更多...

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

Win10关闭Windows Defender

 Win7,Win8,Win10已经内置了一款杀毒软件,就是本文标题的Windows Defender。现在的网络环境与6、7年前已经相比已经好很多了,不再是一打开一个网页就会有很多病毒(这个事情要感谢360首先搞了免费的杀毒)。再加上低版本的IE已经基本上已经退出历史舞台,高版本的IE和其它的一些浏览器安全性做的都还不错,中毒的可能性也比较少。WIn7以上的系统都带了UAC,一些敏感的操作都会弹出提示,就算病毒进入也很难生存。所以我的电脑基本上是不开杀毒软件的,基本上也就偶尔开一下安全卫士之类的清理一下垃圾。

在没有病毒的时候,杀毒软件其实就是一个最大的病毒,会严重影响机器的性能。当你卸载了其它的杀毒软件的时候,Windows Defender就会在后台运行。而且经常占用一整个CPU核心。

如何关闭WIndows Defender

输入WIndows+R打开运行对话框,再输入gpedit.msc启动组策略编辑器。

查看更多...

分类:win7技术 | 固定链接 | 评论: 0 | 查看次数: 7729

python hash函数

 hash计算可以把任意数据变成一段“摘要”,只要这段数据中的任何字节变化都会引起hash值非常大的变化,所以hash值可以用来检查数据有没有被篡改。hash计算的另外一个特性是hash值无法反向计算,哪怕你知道了hash值,你也不能通过某种算法反解出他原来的值。所以在WEB应用开发中也经常会用来加密用户的密码数据。在python的开发中当然也会需要这样的功能。本文就以最常用的两种算法md5和sha1为例简单介绍一下python的hash函数。

查看更多...

Tags: hash python

分类:python | 固定链接 | 评论: 0 | 查看次数: 11782

sass安装

 Bootstrap4据说用sass编译了,所以研究了一下。sass是ruby语言写的,但是你不需要懂ruby语言。这篇文章主要是记录一下sass的安装。

1. 安装Ruby

既然sass是用ruby语言写的,所以第一步就是要安装一个ruby的解释器。你可以到ruby的官网找一个合适的版本。对Windows用户来说,你可以使用RubyInstaller,下载下来是一个安装器,安步骤安装即可。

2. 安装sass

查看更多...

Tags: CSS ruby

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

JS正则表达式进取URL中的域名

这个事件比较简单,就直接上代码了。

var urls = [
	"http://www.zeroplace.cn",
	"http://www.zeroplace.cn/",
	"http://www.zeroplace.cn/article.asp?id=957",
	"https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=web%E5%BA%94%E7%94%A8%E5%BC%80%E5%8F%91&rsv_spt=1&oq=JSON.stringify&rsv_pq=8ba7307400013580&rsv_t=2a02dSXqxXonLrYdUkp9FjCY4PxpOu1kBVqJCbNQxR2jooK1SQEde%2F0yBXLnXmXonlps&rsv_enter=1&rsv_sug3=13&rsv_sug1=11&bs=JSON.stringify"
];

var pattern = /^(http|https):\/\/([^\/]*)(?:$|\/.*$)/

urls.forEach(function(url){
	var match = url.match(pattern);
	console.log([match[1], match[2]]);
});

match[2]就是最后的域名,只能匹配http或https的schema。

查看更多...

Tags: 正则表达式 js

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

Sublime Text 3 Package Control安装

Sublime的包管理器可以方便我们安装其它的插件,所以基本上安装好Sublime之后的第一件事就是安装包管理器( Package Control)。其实这个包管理器它自己就是一个插件。

 首先是按Ctrl+`调出控制台,然后输入以下命令即可,Sublime2和Sublime3有些不同。

Sublime2

import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')

Sublime3

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

查看更多...

Tags: sublime

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

粗用laravel5代码的感觉

 最近在网上看到大家对laravel的讨论比较多,所以我就下了一个laravel5.1(下面就简称为laravel5啦)的源码回来看了一下(大家用的比较多的应该不是5吧)。大致上看了一下结构什么的,没怎么往细了看。最后看了一下laravel5的官方文档,尝试性的写了一些代码。

结构

laravel5里面比较核心的应该有两个大的模块,一个是Application,一个是Kernel。

其实Application就是一个容器,加上一些对应用的配置,回调什么的。主要功能就是一个容器。他的这个思路有点类似于Java里面的Spring的容器。

查看更多...

Tags: php laravel

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

php闭包绑定

在PHP5.3中引入了匿名函数,当在PHP中定义一个匿名函数的时候会产生一个Closure对象,也就是闭包。在PHP5.4起这个对象加入了一些方法,用来对这个闭包对象进行更多的控制。主要是Closure的bind静态方法(Closure也有一个bindTo非静态方法,但功能基本上和bind方法一样)。

网上对PHP闭包的绑定的介绍比较少,我之前也没有怎么用过,只是自己查了一下手册,写了一些测试性质的代码,大致知道了闭包的绑定是怎么用的。

函数原型

public static Closure Closure::bind ( Closure $closure , object $newthis [, mixed $newscope = "static' ] )

第一个参数$closure就是一个闭包对象,第二个参数是这个闭包绑定的$this指针,第三个是闭包的新的作用域。

查看更多...

Tags: php 闭包

分类:PHPCMS | 固定链接 | 评论: 0 | 查看次数: 8725

百度链接提交主动推送ASP/PHP代码

链接推送是最为快速的提交提交链接的方式,百度建议您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。

这里给出两段代码,分别用asp和php将您网站上新产生的链接推送给百度。

asp代码

sub noticeBaidu(article_url)
	dim http, url, body, responseText
	body = article_url
	url = "http://data.zz.baidu.com/urls?site=这里修改为你自己的网址&token=这里修改为你自己的推送KEY"
	set http=server.createobject("MSXML2.XMLHTTP")
	http.open "POST", url, false
	http.setRequestHeader "User-Agent", "request"
	http.setRequestHeader "Content-Type", "text/plain"

	http.send(body)
	" response.write(http.readystate)
	responseText = http.responseText
	response.write("notice response: " & responseText)
	set http = nothing
end sub

php代码

<?php
$urls = array(
    "http://www.zeroplace.cn/article.asp?id=960',
    'http://www.zeroplace.cn/article.asp?id=961',
);
$api = 'http://data.zz.baidu.com/urls
site=这里修改为你自己的网站&token=这里修改为你自己的推送KEY';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POSTFIELDS => implode("\n", $urls),
    CURLOPT_HTTPHEADER => array('Content-Type: text/plain'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;

查看更多...

Tags: asp php seo

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

yii2 rbac权限管理

Yii2是一个好的web开发框架, 其中也提供了对RBAC权限管理的支持。RBAC就是Role-Based Access Control(基于角色的访问控制)的简写,具体请看百度百科,http://baike.baidu.com/view/73432.htm

核心思想就是我把一系列的许可组合在一起,成为一个角色。第一个用户可以扮演多个角色,只要这多个角色中的其中一个角色可以做的事,此用户就可以做。

在Yii2中,RBAC模型如下图所示。

yii2 权限管理模型

查看更多...

Tags: yii rbac 权限

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

php error_reporting参数的二进制表

 

常量 二进制
1 E_ERROR 0000000000001
2 E_WARNING 0000000000010
4 E_PARSE 0000000000100
8 E_NOTICE 0000000001000
16 E_CORE_ERROR 0000000010000
32 E_CORE_WARNING 0000000100000
64 E_COMPILE_ERROR 0000001000000
128 E_COMPILE_WARNING 0000010000000
256 E_USER_ERROR 0000100000000
512 E_USER_WARNING 0001000000000
1024 E_USER_NOTICE 0010000000000
2048 E_STRICT 0100000000000
4096 E_RECOVERABLE_ERROR 1000000000000
8191 E_ALL 1111111111111

查看更多...

Tags: php

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

常用开源协议的比较

 我们在WEB应用开发的过程中经常需要用到一些开源的库或软件,在享受开源带来的好处的同时,我们也要注意尊重原作者的劳动成果。在这过程中我们就需要了解一些常用的开源协议。常用的开源协议有GPL,LGPL,BSD,AL2.0,MIT等。我们来比较一下这些开源协议的区别。

1. GPL协议

第一点,这个协议说,我是开源的,免费的。第二点,这个协议跟我们说,不管你是用了我的代码还是用了我的二进制库,你就是跟我一样的了,也发尊守GPL协议。也就是说,如果你用了GPL协议开源的库或软件,你的软件也必需要开源,免费,不能作商业用途。

2. LGPL协议

查看更多...

Tags: 开源

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

PHP对数组进行排序

在用PHP进行WEB应用开发中我们经常需要对数组进行排序,强大的PHP也内置了很多方便我们排序的函数。让我们来看一下。

对值数组进行排序sort/rsort

这两个函数基本上是一样的,只是一个是正序,一个是反序。下面其它的也是成对的,就不再说明了。

这组函数只对数组的值进行排序,所有的KEY都会被丢弃掉。所以这组函数适合对值数组进行排序。

关于sort_flags这个参数,这里说明一下。下面如果出现sort_flag也是一样的用法。

  • SORT_REGULAR - 正常比较单元(不改变类型)
  • SORT_NUMERIC - 单元被作为数字来比较
  • SORT_STRING - 单元被作为字符串来比较
  • SORT_LOCALE_STRING - 根据当前的 locale 设置来把单元当作字符串比较。PHP 4.4.0 和 5.0.2 新加

 

查看更多...

Tags: php 排序

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

【福利】阿里云服务器购买优惠码

新得一枚阿里云的优惠码,可以在原有的价格的基础上打9折

1、推荐码使用规则?
适用订单:首次购买包年包月云服务器ECS和云数据库RDS的订单
优惠折扣:享受原价9折优惠。
有效期: 推荐码限量限时,请尽快使用。
(其中分销商关联账号、已打折订单、企业子账户不在使用范围。)

2、如何使用?
选好产品->立即购买->确认订单环节->点击「我有推荐码」->输入推荐码->立享9折!

优惠码使用方法

优惠码:ERIF3P

查看更多...

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

php中==与===的使用不慎导致安全问题

  php是一门动态类型的语言,他的变量的类型不需要我们显式的指出,他会自动选择合适的类型。所以在php中有两种相等比较符,==与===。 在使用==进行比较时,将会进行类型转换后的比较。当使用===将会先比较变量的类型,如果类型不一致,会直接被判定为不相等。

 
由此使用"=="会引入一些安全问题。

查看更多...

Tags: php 安全

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

win7不用助手 手动升级到win10

 

 昨天用360的助手把公司的电脑升级到win10了,体验还可以。就想把家里的电脑也升级到win10,但是因为家里的电脑是未激活的win8.1,所以又折腾了一下,把win8.1降到了win7,激活,准备再用360来升级的。

但是今天360告诉我,由于系统繁忙我的升级被到8.5号了。无奈呀。只能琢磨自己升级了。另外吐槽一下腾讯,说好的升级助手呢?

ed2k://|file|cn_windows_10_multiple_editions_x64_dvd_6848463.iso|4303300608|94FD861E82458005A9CA8E617379856A|/

我是用了这么个镜像,下载回来。用daemon tools虚拟到光驱,直接点里面的setup.exe就可以开始升级了。

另外还有一些版本,提供给大家。

查看更多...

Tags: win7 win10

分类:win7技术 | 固定链接 | 评论: 0 | 查看次数: 8312

php包自动加载工具Composer

 java有Maven,Gradle, node.js有npm, python也有如easy_install等的包管理工具,现在PHP也有了一个自动的包管理工具Composer(https://getcomposer.org/)。在这之前,如果你需要为PHP添加一个包,你需要去网上下载,放到合适的位置,如果这个包又依赖了其它包,又要去找,非常麻烦。现在,因为有了composer,一切都好了。

你只需要写一个简单的文件,composer.json, composer就会自动帮你从网上下载合适的包,并且帮你把依赖搞定。

{
    "require": {
        "foo/bar": "1.0.0"
    }
}

Composer的安装

curl -sS https://getcomposer.org/installer | php 
php -r "readfile("https://getcomposer.org/installer');" | php

执行这两条中的任何一条语句,就可以安装composer了。

查看更多...

Tags: php composer

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

Packagist / Composer 中国全量镜像

 备注一下,一个网站

http://pkg.phpcomposer.com/

在composer.json中添加如下配置

{
    "repositories": [
        {"type": "composer", "url": "http://packagist.phpcomposer.com"},
        {"packagist": false}
    ]
}

 

查看更多...

Tags: composer

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

 一、MySQL 获得当前日期时间 函数

1.1 获得当前日期+时间(date + time)函数:now()
mysql> select now();
 
+---------------------+
| now() |
+---------------------+
| 2008-08-08 22:20:46 |
+---------------------+
 
除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:
current_timestamp()
,current_timestamp
,localtime()
,localtime
,localtimestamp -- (v4.0.6)
,localtimestamp() -- (v4.0.6)
 
这些日期时间函数,都等同于 now()。鉴于 now() 函数简短易记,建议总是使用 now() 来替代上面列出的函数。

查看更多...

Tags: mysql 数据库

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