PHP
文章平均质量分 72
据说是最好的语言
梦里藍天
不积跬步,无以至千里;不积小流,无以成江海
展开
-
CodeIgniter伪静态 使用PHP7以上伪静态错误 CodeIgniter伪静态出现404或500错误
正确的伪静态设置:修改http.conf去掉Apache里的http.conf文件里的#LoadModule rewrite_module modules/mod_rewrite.so 前边的#mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面.把http.conf里的AllowOverride None 都改成AllowOverride AllAllowOverride参数就是指明Apache服务器是否去找.htacess文件作为配置文件,如果设置为no原创 2020-10-30 16:54:40 · 673 阅读 · 0 评论 -
CentOS离线/内网/无网络安装PHP环境
准备rpm包,安装依赖(CentOS7演示)使用当前CentOS的IOS镜像文件,使用压缩工具打开,把包中的Packages文件下的rpm文件复制到一个文件中。在网站https://pkgs.org/搜索下载所需要的依赖包,根据使用的系统选择不同版本,CentOS7使用的el7,下载完毕和系统复制出来的文件放在一起.,版本7可以下载这里 链接:https://pan.baidu.co...原创 2019-12-14 22:24:12 · 5341 阅读 · 3 评论 -
缓存穿透、缓存击穿、缓存雪崩的定义及处理措施
1.缓存的流程及作用:每一个企业级应用都应该在数据不要求必须及时的场景使用缓存,当用户访问某个业务场景时,先从缓存中读取,如果没有缓存或者缓存过期再去数据库读取,然后把数据写入缓存在返回客户端;这样减少了大量的数据库读取次数与压力,提高了系统性能。2.缓存穿透:缓存穿透一般都是人为的恶意访问行为,数据库唯一标识几乎都是自增长ID,攻击者就利用查询不到数据也不缓存或者缓存中根本没有的进行缓...原创 2019-03-16 11:43:22 · 385 阅读 · 0 评论 -
php关于经纬度的计算处理
根据两点经纬度计算距离这些经纬线是怎样定出来的呢?地球是在不停地绕地轴旋转(地轴是一根通过地球南北两极和地球中心的假想线),在地球中腰画一个与地轴垂直的大圆圈,使圈上的每一点都和南北两极的距离相等,这个圆圈就叫作“赤道”。在赤道的南北两边,画出许多和赤道平行的圆圈,就是“纬圈”;构成这些圆圈的线段,叫做纬线。我们把赤道定为纬度零度,向南向北各为90度,在赤道以南的叫南纬,在赤道以北的转载 2016-12-21 17:12:50 · 1252 阅读 · 0 评论 -
curl设置不当导致php抓取网页失败
php抓取网页,可谓轻而易举,几行代码就可以搞定。不过,如果你有所疏忽,程序写得不够严密,就会出现有的网页抓取成功有的网页却抓不了的问题。先来看看php抓取代码的一个方法:$curl = curl_init();curl_setopt($curl, CURLOPT_URL, ‘http://www.webkaka.com/’);$data = curl_exec转载 2016-11-28 09:09:40 · 1515 阅读 · 0 评论 -
php递归函数return问题
在递归函数中返回值问题/* 循环去除字符串左边的0 */function removeLeftZero($str){ if($str['0'] == '0'){ $str = substr($str, '1'); removeLeftZero($str); }else{ return $str; } }在大多数人看来这段代码没有问题,如果不是运行一下也不知道问题出在原创 2016-12-03 10:57:54 · 5435 阅读 · 3 评论 -
php判断是否为手机访问
class IndexController extends Controller { protected $isMobile; public function _initialize(){ $this->isMobile = false; // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset ($_SERVER['HTTP_X_WAP_PROFI转载 2016-11-29 11:24:54 · 559 阅读 · 0 评论 -
include和require的区别
两者没有太大的区别,如果要包含的文件不存在,include提示notice,然后继续执行下面的语句,require提示致命错误并且退出。根据测 试,win32平台下它们都是先包含后执行,所以被包含文件里最好不要再有include或require语句,这样会造成目录混乱。或许*nux下情况 不同,暂时还没测试。如果一个文件不想被包含多次可以使用include_once或require_once#转载 2016-10-05 11:24:53 · 204 阅读 · 0 评论 -
isset()和empty()的区别
两者都是测试变量用的,但是isset()是测试变量是否被赋值,而empty()是测试一个已经被赋值的变量是否为空。如果一个变量没被赋值就引用在 php里是被允许的,但会有notice提示。如果一个变量被赋空值,$foo=""或者$foo=0或者 $foo=false,那么empty($foo)返回真,isset($foo)也返回真,就是说赋空值不会注销一个变量。要注销一个变量,可以用 unset(转载 2016-10-05 11:19:31 · 420 阅读 · 0 评论 -
thinkphp 如何使用SessionDB引擎把session存入数据库
首先在项目配置文件中写入'SESSION_AUTO_START' => true, //是否开启session'SESSION_OPTIONS'=>array( 'type'=>'Db','expire'=>1440,),'SESSION_TABLE'=>'starmoon_session',使用下面的语句创建数据库:CREATE TABLE starmoon_sess原创 2016-10-04 15:39:50 · 2693 阅读 · 0 评论