收集了一些常用的代码片段
thinkphp5.1验证方法
设置phpstorm的属性
C:\Program Files\JetBrains\PhpStorm 2017.2.4\bin下的idea.properties,添加上需要的属性,重启phpstorm生效
idea.case.sensitive.fs=true ##显式的告诉IDE我的文件系统是区分大小写的
设置composer源为阿里源
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
thinkphp5.1跨域设置
Route::post('stock','api.stock/save')
->allowCrossDomain(true,['Access-Control-Allow-Headers'=>'Authorization, Content-Type, If-Match, If-Modified-Since, If-None-Match, If-Unmodified-Since, X-Requested-With,X-ACCESS-TOKEN']);
生成随机字符
//随机字符
//DlxB4Z1tj3E=
var_dump(base64_encode(random_bytes(8)));
//a0b6505900b062dd
var_dump(bin2hex(random_bytes(8)));
//适用于token场景,结果如 E9tTzcFefvc=
var_dump(base64_encode(openssl_random_pseudo_bytes(8)));
//98217f9b95cc4778
var_dump(bin2hex(openssl_random_pseudo_bytes(8)));
//加密字符
//$2y$10$332YBXZ3SznRWOIK6fNP5.PGzQCb9AbMgGNRj0llhgOzd2xIAO0c.
var_dump(password_hash(microtime(true), PASSWORD_DEFAULT));
//1e9a09a18c72531ca7f7bb57d742a4a6a62d00902f85872674e004597d10192e
var_dump(hash_hmac('sha256', microtime(true), 'secret'));
//HpoJoYxyUxyn97tX10KkpqYtAJAvhYcmdOAEWX0QGS4=
var_dump(base64_encode(hash_hmac('sha256', microtime(true), 'secret',true)));
//随机整数
var_dump(random_int(100, 999));//加密随机整数
var_dump(rand(100, 999));//普通随机
var_dump(mt_rand(100, 999));//更快的随机
获取请求的原始数据
$data = file_get_contents("php://input");
显示错误
ini_set('display_errors',1);
ini_set('display_startup_errors',1);
error_reporting(-1);
服务器跨域
header("Access-Control-Allow-Origin:*");
语法糖
//表达式 && 语句; <=> if(表达式) 语句;
//例如
is_array($total) && $total = current($total);
//等效于
if(is_array($total)) $total = current($total);
文件相关
$file_ext = pathinfo($file,PATHINFO_EXTENSION);//获取文件后缀
$file_name = pathinfo($file,PATHINFO_FILENAME);//从路径中获取文件(不包含后缀)
$file_basename = pathinfo($file,PATHINFO_BASENAME);//从路径中获取文件(包含后缀)
$file_mimetype = finfo_file(finfo_open(FILEINFO_MIME_TYPE),$local_file_path);获取文件mimetpye,文件必须在本地
//文件hash
openssl_digest(file_get_contents($file), 'sha256');//获取文件hash码,64位
//写入系统临时文件
$tempnam = tempnam(sys_get_temp_dir(),'prefix');
file_put_contents($tempnam,file_get_contents($url));//$url可以是公网地址
格式化行文本
$s = "lsh
hemispheren
";
$arr = explode(PHP_EOL, $s);
array_walk($arr, function(&$v){
$v = trim($v);
});
var_dump(implode(',', $arr));//lsh,hemispheren