Base64编码后会生成+,/,=这些特殊符号进行URL传输时+/会转义,导致数据不一致无法解码。
一、URL安全的字符串编码
function base64_safeurl_encode($string) { return str_replace(array('+','/','='),array('-','_',''),base64_encode($string)); }
二、URL安全的字符串解码
Base64编码后会生成+,/,=这些特殊符号进行URL传输时+/会转义,导致数据不一致无法解码。
一、URL安全的字符串编码
function base64_safeurl_encode($string) { return str_replace(array('+','/','='),array('-','_',''),base64_encode($string)); }
二、URL安全的字符串解码
1、strstr() 函数
strstr()函数搜索一个字符串在另一个字符串中的第一次出现(区分大小写)。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。
$str = 'www.77bx.com'; $find = '.com'; if(strstr($str,$find)){ echo '包含'; }else{ echo '不包含'; }stristr()函数搜索一个字符串在另一个字符串中的第一次出现(不区分大小写)。
1、PHP介绍
1.1 Windows下的php有两个版本,线程安全(Thread Safe)和非线程安全(Non Thread Safe)。
1.2 由于Linux/Unix系统采用的是多进程的工作方式,所以linux服务器下的PHP,没有PHP线程安全和非线程安全版的区分。
所以现在说的TS和NTS版本只是对于Windows下的PHP来说的。
2、PHP说明
2.1 TS是指具有多线程能力的构建,NTS是指单线程构建。TS二进制文件的用例涉及与作为模块加载到Web服务器的多线程SAPI和PHP进行交互。对于NTS二进制文件,广泛的用例是通过FastCGI协议与Web服务器进行交互,不使用多线程(也可以是CLI)。
PHP生成简单的验证码实例。
验证码图片的生成是验证码功能的核心,需要生成一个随机字符,并将其渲染为图像展示给用户。PHP中可以使用GD库来生成验证码图片。
GD库是一种用于动态创建图像的PHP扩展,它提供了多种函数可以用于创建图像、修改图像、保存图像等操作,通过GD库可以很方便地创建验证码图片。
使用GD生成验证码步骤:
1、创建图片大小,背景颜色。
本文主要介绍关于PHP目前比较常见的五大运行模式:CGI,FAST-CGI,CLI,Web模块模式(mod_php),ISAPI。
1、CGI(通用网关接口/ Common Gateway Interface)
通俗的讲CGI就象是一座桥,把网页和WEB服务器中的执行程序连接起来,它把HTML接收的指令传递给服务器的执行程序,再把服务器执行程序的结果返还给HTML页。CGI 的跨平台性能极佳,几乎可以在任何操作系统上实现。CGI方式在遇到连接请求(用户请求)先要创建cgi的子进程,激活一个CGI进程,然后处理请求,处理完后结束这个子进程。这就是fork-and-execute模式。所以用cgi方式的服务器有多少连接请求就会有多少cgi子进程,子进程反复加载是cgi性能低下的主要原因。都会当用户请求数量非常多时,会大量挤占系统的资源如内 存,CPU时间等,造成效能低下。
bin2hex()函数
bin2hex()函数把ASCII字符的字符串转换为十六进制值。
语法:bin2hex(string)
string 必需。要转换的字符串。
例子:bin2hex("Hello world!"); \\输出48656c6c6f20776f726c6421
pack()函数
pack() 函数把数据装入一个二进制字符串。
语法:pack(format,args+)
format 必需。规定在包装数据时所使用的格式。
args+ 可选。规定被包装的一个或多个参数。
例子:pack("H*","48656c6c6f20776f726c6421"); \\输出Hello world!
实例展示
1、把图片test.jpg转换为十六进制形式字符串
$data = file_get_contents("test.jpg");
$result = bin2hex($data);
2、把十六进制形式字符串转为一个二进制字符串
$data = pack("H*",$result);
在PHP编程过程中经常要取多个不重复的随机数。随机一个数可以用随机函数rand(),但是现在假如要在1-20中取5个不重复的数字,使用rand(1,20)只可以取一个数字,取5个不重复的随机数就比较麻烦了。比较简单的方法是用数组来取这5个随机数。下面这几种方法多是用数组来实现的。
方法一
首先创建一个有1-20元素的数组,对数组进行随机排序,取数组前5个元素。
本文主要介绍PHP如何获取用户的IP。
方法一
$ip = $_SERVER["REMOTE_ADDR"];
方法二