php curl乱码问题

php curl乱码问题
小V刚刚碰到个乱码问题,初期以为是编码问题,就设置了header和charset发现都没用,最后排查是gzip压缩了 'Accept-Encoding: gzip, deflate'

阅读全文>>

阅读全文...

php curl设置自定义的HTTP头

php curl设置自定义的HTTP头
小V今天碰到比较坑的问题,一直以为参数是'item'=>'value'这么写的,没想到是'item:value'这样的。 $headers = array(); $headers[] = 'X-Apple-Tz: 0'; $headers[] = 'X-Apple-Store-Front: 143444,12'; $headers[] = 'Accept: text/html,applic...

阅读全文>>

阅读全文...

解决wamp下Composer因php_openssl扩展缺失而安装失败的问题

解决wamp下Composer因php_openssl扩展缺失而安装失败的问题
Composer( https://getcomposer.org/ )是PHP下的一个依赖管理工具。你可以在你的项目中声明你所需要用到的类库,然后Composer会在项目中为你安装它们。如果你了解Node的 npm 或者Ruby的 Bundler ,就理解它是做什么的了,但是,它不是包管理器。 在Windows的Wamp环境下安装Composer(注:Composer要求PHP版本在5.3...

阅读全文>>

阅读全文...

百万级PHP网站架构工具箱

百万级PHP网站架构工具箱
在了解过世界最大的PHP站点,Facebook的后台技术后,今天我们来了解一个百万级PHP站点的网站架构:Poppen.de。 Poppen.de是德国的一个社交网站,相对Facebook、Flickr来说是一个很小的网站,但它有一个很好的架构,融合了很多技术,如 Nigix、MySql、CouchDB、Erlang、Memcached、RabbitMQ、PHP、Graphite、Red5以及Ts...

阅读全文>>

阅读全文...

【原创】ThinkPHP5.0.7缓存空数组的BUG

【原创】ThinkPHP5.0.7缓存空数组的BUG
问题:在对数据库查询获取到“空数据”时,不会写入缓存。 我使用的TP版本:5.0.7_core 我看了下db\Query.php,在2304行有一句判断 if (isset($cache) && $resultSet) { // 缓存数据集 $this->cacheData($key, $resultSet, $cache); } 在这个判断前$...

阅读全文>>

阅读全文...

记一次判断错误所引起的缓存失败问题

记一次判断错误所引起的缓存失败问题
我习惯用empty来检测数据,今天碰到了个缓存失败问题,之前的代码如下: // 根据分类动作获取应用列表 public function getListByAction($action=''){ $cacheName='appListByAction('.$action.')V1'; $appList=cache($cacheName); if(empty($...

阅读全文>>

阅读全文...

PHP密码加盐Hash

PHP密码加盐Hash
加盐Hash: $salt=base64_encode(mcrypt_create_iv(32,MCRYPT_DEV_RANDOM)); $password=sha1($register_password.$salt); 解释: 使用mcrypt,产生电脑随机生成的,专门用户加密的随机数函数。 把得到的随机数通过base...

阅读全文>>

阅读全文...

history.back返回后数据丢失的解决办法

history.back返回后数据丢失的解决办法
‍js使用history.back返回表单数据丢失的主要原因就是使用了session_start();的原因,该函数会强制当前页面不被缓存。   解决办法如下: 在你的 Session_start 函数后加入 header("Cache-control: private"); 注意在本行之前你的PHP程序不能有任何输出。 还有基于session的解决方法,在session_sta...

阅读全文>>

阅读全文...