[笔记]几个简单有用的PHP函数
2016-01-08 01:04
706 查看
收藏几个简单的PHP函数,分别用于对象到数组转换、json到php数组转换功能、curl模拟POST以及根据链接获取内容。不直接使用
1. 对象到数组转换
2. json到php数组转换
3. curl 实现 GET / POST
4. 获取链接内容(不存在file_get_contents() 时使用curl方法)
json_decode()的原因是php
json_decode()函数对
\xA312此类字符支持不好。
1. 对象到数组转换
function objToArr($obj){ if(!is_object($obj) && !is_array($obj)) { return $obj; } $arr = array(); foreach($obj as $k => $v){ $arr[$k] = $this->objToArr($v); } return $arr; }
2. json到php数组转换
function simple_json_parser($json){ $json = str_replace("{","",str_replace("}","", $json)); $jsonValue = explode(",", $json); $arr = array(); foreach($jsonValue as $v){ $jValue = explode(":", $v); $arr[str_replace('"',"", $jValue[0])] = (str_replace('"', "", $jValue[1])); } return $arr; }
3. curl 实现 GET / POST
function oauth_http($method,$header,$url,$data){ $method = $method ? $method : 'get'; if( $method == 'get') { $ch = curl_init (); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, TRUE ); curl_setopt ( $ch, CURLOPT_URL, $url ); $result = curl_exec ( $ch ); curl_close ( $ch ); return $result; } elseif ( $method == 'post' ) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTPHEADER, $header); curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, TRUE ); curl_setopt ( $ch, CURLOPT_POST, TRUE ); curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data ); curl_setopt ( $ch, CURLOPT_URL, $url ); curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE); $ret = curl_exec ( $ch ); curl_close ( $ch ); return $ret; } }
4. 获取链接内容(不存在file_get_contents() 时使用curl方法)
function get_url_contents($url) { if (ini_get("allow_url_fopen") == "1") return file_get_contents($url); $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($ch, CURLOPT_URL, $url); $result = curl_exec($ch); curl_close($ch); return $result; }
相关文章推荐
- PHP慢慢长路之问题与解决方法(1)――去除li下的圆点,记住啦~
- PHP中list()函数用法实例简析
- PHP中each与list用法分析
- 深入浅析php中sprintf与printf函数的用法及区别
- PHP 7.0.2 正式版发布
- PHP使用数组依次替换字符串中匹配项
- PHP实现搜索地理位置及计算两点地理位置间距离的实例
- 理解PHP中的Session及对Session有效期的控制
- 在PHP站点的页面上添加Facebook评论插件的实例教程
- 关于扩展 Laravel 默认 Session 中间件导致的 Session 写入失效问题分析
- PHP文件操作之获取目录下文件与计算相对路径的方法
- 第七篇 PHP编码规范
- ftp上传文件
- php 返回查询结果某个字段
- 苹果电脑开启php的xdebug插件
- 苹果电脑下开启PHP功能
- php.ini文件中的include_path设置
- tftp搭建记录
- PHP利用token防止表单重复提交
- TortoiseSVN英文版菜单中文翻译