<?php
header("content-type:text/html;charset=utf-8");
/**
*@param $string目标字符串
*@param $key 加密key
*@return string
*/
function encryption($string="",$key="cxphp"){
//str_split把字符串分割到数组中
$strArr = str_split(base64_encode($string));
$strcount = count($strArr);
foreach(str_split($key) as $key=>$value){
$key < $strcount && $strArr[$key].= $value;
return str_replace(array('=','+','/'), array('O0O0O', 'o000o', 'oo00o'), join($strArr));
}
}
/**
*@param $string 解析字符串
*@param $key 揭秘到key
*@return string
*/
function deciphering($string='',$skey='cxphp'){
$strArr = str_split(str_replace(array('O0O0O', 'o000o', 'oo00o'), array('=', '+', '/'), $string), 2);
$strCount = count($strArr);
foreach (str_split($skey) as $key => $value)
$key <= $strCount && @$strArr[$key][1] === $value && $strArr[$key] = $strArr[$key][0];
return base64_decode(join($strArr));
}
$a = encryption('这是我的一条测试数据');
var_dump($a);
$a = '6cLo000oZ5piv5oiR55qE5LiA5p2h5rWL6Ko000oV5pWw5o2u';
$b = deciphering($a);
var_dump($b);
标签存档: php
php 简单的对称加密
php 批量重命名文件
如何用php批量重命名文件
/**
* php 批量重命名文件
*
* @return void
*/
function renamefiles()
{
$paths = "/path";
$d = dir($paths);
while (false !== ($entry = $d->read())) {
if($entry == '.' || $entry == '..'){
} else {
}
if(strpos($entry, '.mp4')){
// echo $paths.$entry;
// echo "原 ".$entry;
echo "<br>";
// $newname = strtr($entry, '-t=18121111.htm', '');
/*把字符串 "Hello world!" 中的字符 "world" 替换为 "Shanghai":
echo str_replace("world","Shanghai","Hello world!");
substr(string,start,length)*/
$newname = substr($entry, 0, 2).".mp4";
echo $newname;
echo "<br>";
rename($paths.$entry, $paths.$newname);
}
}
$d->close();
echo "done";
}
Laravel – CSRF token禁用方法
[PHP] – Laravel – CSRF token禁用方法:
方法一
打开文件:app\Http\Kernel.php
把这行注释掉:
‘App\Http\Middleware\VerifyCsrfToken’
php回调函数接收数据常用变量
$GLOBALS[‘HTTP_RAW_POST_DATA’]
如果是json格式可以用下面这个来解析
$a= json_decode($GLOBALS[‘HTTP_RAW_POST_DATA’], true);
php判断GET/POST参数是否存在
php判断GET/POST参数是否存在
if(is_array($_GET)&&count($_GET)>0)//先判断是否通过get传值了
{
if(isset($_GET["m"]))//是否存在"m"的参数
{
$market = $_GET['m'];//存在
}
}else
{
echo "没有通过get传值";
}
php绕开ssl验证&获取包含headers的所有response
<?php
$curl = curl_init();
$url= "https://testapi.xxxx.author/signin";
$email = $_POST["email"];
$pwd = $_POST["password"];
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "email=".$email."&password=".$pwd,
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded",
"postman-token: 1ebc8292-5e01-a6fa-9f91-26d3126892e0"
),
));
curl_setopt($curl, CURLOPT_HEADER, true);//get all respose include headers & body
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); //pass https ssl verification
//$result = curl_getinfo($curl, CURLINFO_HTTP_CODE);
//$headers = apache_request_headers();
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
?>
php判断GET/POST参数是否存在
[code]
if(is_array($_GET)&&count($_GET)>0)//先判断是否通过get传值了
{
if(isset($_GET["m"]))//是否存在"m"的参数
{
$market = $_GET[‘m’];//存在
}
}else
{
echo "没有通过get传值";
}
[/code]
最简单的php写入数据库
最简单的php写入数据库,小程序测试用
<?php
function writetosql(){
$servername = "localhost";
$username = "root";
$password = "123456";
$dbname = "test";
$ts = time();
$fname = $_POST["name"];
$type = $_POST["tt"];
$note = $_POST["note"]?$_POST["note"]:"小懒虫";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 修改数据库连接字符集为 utf8
mysqli_set_charset($conn,"utf8");
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$sql = 'INSERT INTO test(fname,type,note,time)VALUES("'.$fname.'","'.$type.'","'.$note.'","'.
$ts.'")';
//echo $sql;
if ($conn->query($sql) === TRUE) {
echo "新记录插入成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
}
?>
xampp httpd-vhosts.conf配置多个虚拟目录
1: 用记事本打开C:/WINDOWS/system32/drivers/etc/hosts文件,配置如下:
127.0.0.1 localhost
127.0.0.1 phptest.com
2:因为我xampp是装在C盘的:用记事本打开C:\xampp\apache\conf\httpd.conf文件,找到Include conf/extra/httpd-vhosts.conf,确认前面没有加#.
2.1找到
[code]
<Directory />
AllowOverride none
Require all denied
</Directory>
[/code]
修改权限,变成:
[code]
<Directory />
Order deny,allow
Allow from all
</Directory>
[/code]
2.2在此文件末尾添加如下内容:
[code]
<Directory "D:/eclipse-php/workspace">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
[/code]
3:打开C:\xampp\apache\conf\extra\httpd-vhosts.conf,在此文件末尾添加如下内容:
[code]
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/"
ServerName localhost
</VirtualHost>
<VirtualHost *:80> //如果配置不同的端口号88,则需要在httpd.conf里面添加 Listen 88
DocumentRoot "D:/eclipse-php/workspace"
ServerName phptest.com
</VirtualHost>
[/code]
5:重启Apache服务即可。