PHP获取referer判断来路防止非法访问

近期有个项目需要用到防止用户非法访问某json页面,基础解决方法就是判断来路来限制非调用访问: $_SERVER[‘HTTP_REFERER’]:来路链接,可能带尾巴(如:http://www.benhailong.com/oldben/1.html),可以通过php内置函数parse_url()来获取到当前网址(www.benhailong.com),即: $refererUrl = parse_url($_SERVER[‘HTTP_REFERER’]); $host = $refererUr...阅读全文

开源中国博客 2018-02-20 18:02:03 benhailong

php学习笔记(四)——数据库存储上传文件路径

上一篇学习了如何上传文件,上传的文件被存放到一个upfiles文件夹里面,这一篇学习将上传文件的存放路径保存到数据库。 先看一下我的目录结构: 上传文件的php代码在upload.php里面,存放的图片与存放php的文件夹为同一级,我这里是用的是相对路径。 创建数据库表: php代码(在上一篇的基础上修改upload.php): // $backinfo = $_FILES["file"]["name"] ."文件已上传"; $backinfo = "../php.02/upfiles/".$_...阅读全文

CSDN博客 2018年02月03日 21:18:23 skyblacktoday

瞅瞅 PHP+Swoole 作为网络通信框架

这里瞅瞅Swoole框架,因为说的比较屌,官网里面文档比较多https://www.swoole.com/ 代码地址(https://gitee.com/swoole/swoole) 这里先复制他的说明(https://wiki.swoole.com/) PHP的异步、并行、高性能网络通信引擎,使用纯C语言编写,提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,异步Redis,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。 ...阅读全文

开源中国博客 2018-02-11 22:03:40 woshixin

PHP PDO在SWOOLE模式下关闭数据库连接一些注意点

最近在swoole中使用php pdo扩展访问数据库的时候,发现了一个很有意思的事情。 我测试用的版本是 PHP 7.1.13 官方手册明确到告诉我们,使用PDO是这样关闭数据库连接的,只需要将PDO对象置为null即可,这段代码就是手册里的 <?php try { $dbh = new PDO('mysql:host=127.0.0.1;dbname=test', 'root', ''); foreach($dbh->query('SELECT * from test') as $row) {...阅读全文

开源中国博客 2018-02-11 21:04:08 anoty

php中去掉字符串最后一位字符,利用substr()函数

$id = ''; foreach ($Media_album_List as $k => $v) { $id .= $v['channel_id'].','; } $ids = substr($id,0,strlen($id)-1); 第一个参数是要修改的字符串; 第二个参数是从哪开始,0是从左数第一位开始 第三个参数是返回几位; 具体可以参照PHP中的 substr()函数用法; 此处可能不够详细或者有不足之处,仅供本人参考使用阅读全文

开源中国博客 2018-02-11 13:02:02 孙常乐

php--------文件夹文件拷贝和复制

php开发中常常对文件进行操作,文件夹和文件的拷贝,复制等。 /** * 文件夹文件拷贝 * * @param string $src 来源文件夹 * @param string $dst 目的地文件夹 * @return bool */ function dir_copy($src = '', $dst = '') { if (empty($src) || empty($dst)) { return false; } $dir = opendir($src); dir_mkdir($dst);...阅读全文

开源中国博客 2018-02-11 09:02:03 切切歆语

PHP实现JS颜文字编码解码过程-aaencode+aadecode

PHP实现JS颜文字加密解密过程-aaencode 调试某网站JS时出现了一堆萌萌哒的代码,且能执行成功,对此感到好奇进行研究并实现了PHP端的编码解码过程。 例如,如下代码在浏览器控制台执行后会输出一段文本。 ゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; o=(゚ー゚) =_=3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚...阅读全文

开源中国博客 2018-02-11 03:02:03 Eller

PHP的普通传值与引用传值以及unset

首先,要理解变量名存储在内存栈中,它是指向堆中具体内存的地址,通过变量名查找堆中的内存; 普通传值,传值以后,是不同的地址名称,指向不同的内存实体; 引用传值,传引用后,是不同的地址名称,但都指向同一个内存实体;改变其中一个,另外一个就也被改变; 以下我将通过三个列子来详细讲解这两个传值的区别: Example1: <?php //普通传值 $param1=1; $param2=2; $param2 = $param1; $param1 = 5; //变量1和变量2是两块内存,互不影响; ech...阅读全文

开源中国博客 2018-02-10 11:02:04 创维_yang

php--------暂停函数 sleep() 与 usleep() 的区别

在PHP中暂停代码执行一定时间,有两个函数可以实现,一个是sleep(),另一个是usleep(),它们参数都是一个整数值。sleep()是暂停多少秒,usleep()是暂停多少微秒。 注意:usleep()单位是微秒,1秒 = 1000毫秒 ,1毫秒 = 1000微秒,即1微秒等于百万分之一秒。 如果程序中要使用要暂停多少毫秒,只能使用usleep(),务必注意参数的单位,假设暂停 50毫秒,应该使用 usleep(50000),而不是usleep(50)。 另外,这个暂停的时候不可能是百分百...阅读全文

开源中国博客 2018-02-10 10:02:03 切切歆语

php-cgi.sock错误

错误信息展示 注意:【PHP52版本】和【PHP54版本以上不同】,以下为52版本示例,54以上版本最后说明 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream 出现以上问题请检查nginx和php-fpm的配置: 1.nginx配置文件nginx.conf,找到其中配置php-fpm路径的地方 location ~\.php$ { root ...阅读全文

开源中国博客 2018-02-09 15:02:05 ZHAO_JH

apache和nginx下禁止指定目录运行php

Apache下禁止指定目录运行PHP脚本 在虚拟主机配置文件中增加php_flag engine off指令即可,配置如下 "/website/uploads"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all php_flag engine off Nginx下禁止指定目录运行PHP脚本 Nginx更简单,直接通过location条件匹配定位后进行权限禁止。 在server配置段中增加如下的配置...阅读全文

开源中国博客 2018-02-09 15:02:05 ZHAO_JH

基于菜鸟教程的 php 学习总结

PHP 超级全局变量 $GLOBALS 在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字: <?php $x=5; $y=10; function myTest(){ global $x,$y; $y=$x+$y; } myTest(); echo $y; // 输出 15 ?> PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。 上面的实例可以...阅读全文

开源中国博客 2018-02-09 15:02:05 创维_yang

laravel5.5初探

1.新建项目 $ valet restart $ cd ~/Sites $ laravel new sample 访问http://sample.test/ 2.Git一下 $ cd ~/Sites/sample $ git init $ git add . && git commit -m "Initial commit" 在 Coding 上新建一个名为 sample 的项目 $ git remote add origin git@git.coding.net:beanho/laravel-...阅读全文

开源中国博客 2018-02-09 12:02:34 BeanHo

php中subtr()函数的使用方法

定义和用法 substr() 函数返回字符串的一部分。 注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。 语法 substr(string,start,length) 参数 描述 string 必需。规定要返回其中一部分的字符串。 start 必需。规定在字符串的何处开始。 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾开始的指定位置开始 0 - 在字符串中的第一个字符处开始 length 可选。规定被返回字符串的长度。默认是直到...阅读全文

开源中国博客 2018-02-08 17:02:04 孙常乐

在windows下通过cmd运行php指定文件

1、保证PHP环境已经搭建完好,如果没有请自行安装,推荐UPUPW(鄙人使用),也可以百度一下,网上会有好多 2、环境变量配置:我的电脑---》右击---》属性---》高级系统设置----》菜单对应【高级】---》环境变量---》系统变量---》选中“Path”---》编辑---》把自己php.exe对应路径粘贴进去,保存; 选中“PATHEXT“编辑,如果没有.php,则追加;.php,保存; 3、打开cmd,推荐(win+x),选择管理员cdm,目录定位到你自己php.exe对应路径,输入 ...阅读全文

开源中国博客 2018-02-08 15:02:04 acclea

php获取当月天数及当月第一天及最后一天、上月第一天及最后一天实现方法

1.获取上个月第一天及最后一天. echo date('Y-m-01', strtotime('-1 month')); echo "<br/>"; echo date('Y-m-t', strtotime('-1 month')); echo "<br/>"; 2.获取当月第一天及最后一天. $BeginDate=date('Y-m-01', strtotime(date("Y-m-d"))); echo $BeginDate; echo "<br/>"; echo date('Y-m-d',...阅读全文

开源中国博客 2018-02-08 11:02:03 oO雨的印记Oo

PHP生成文件

PHP生成文件 参数 /** * 生成文件 * @param string $filename 文件名 * @param string $datas 输入该文件中的内容 * @return booler 无返回 */ PHP function logsToFile($filename,$datas){ $file ='./logs/'.$filename; //生成位置在根目录中的logs if(!file_exists($file)){ //判断该文件是否存在 $fp = fopen($fil...阅读全文

开源中国博客 2018-02-08 10:02:03 黄灿锋