PHP读取配置文件、mysqli操作、session读写、url跳转
2016-08-06 01:19
579 查看
<?php /** * 获取、设定配置文件的值 * @param unknown_type $key * @param unknown_type $val */ function getConfig($key=null,$val=null) { $config = array(); if (empty($config)){ $config = include ("config.php"); } if (is_null($key)) { return $config; } else { if (is_null($val)) { //获取指定值 if (strpos($key, "->")) { $tmp = $config; $arr = explode("->", $key); foreach ($arr as $v) { $tmp = $tmp[$v]; } return $tmp; } else { return $config[$key]; } } else { //设定指定值 if (strpos($key, "->")){ $arr = explode("->", $key); $config[$arr[0]][$arr[1]] = $val; } else { $config[$key] = $val; } return true; } } } /** * 获取数据库连接 */ function connectDB() { static $model = null; if (is_null($model)) { $dbInfo = getConfig("db"); $model = new mysqli($dbInfo["host"],$dbInfo["user"],$dbInfo["passwd"],$dbInfo["dbname"]); if ($model->connect_errno) { die("数据库连接错误".$model->connect_errno." err:".$model->connect_error); } $model->set_charset("utf8"); } return $model; } /** * 查询数据库内容 * @param unknown_type $sql * @param unknown_type $fieldCount 字段数 * @param unknown_type $type 字段类型 * @param unknown_type $param */ function select($sql,$fieldCount=1,$type="",$param=null) { $funStr = '$stmt = mysqli_prepare(connectDB(),"'.$sql.'");'; if (empty($type)){ $funStr = $funStr.'mysqli_stmt_bind_param($stmt);'; } else { for ($i=0;$i<count($param);$i++) { $paramArray[] = '$p'.$i; $funStr = $funStr.'$p'.$i.'="'.$param[$i].'";'; } $funStr = $funStr.'mysqli_stmt_bind_param($stmt,"'.$type.'",'. implode(',', $paramArray).');'; } $funStr = $funStr.'mysqli_stmt_execute($stmt); mysqli_stmt_store_result($stmt);'; for ($i=0;$i<$fieldCount;$i++) { $bindResult[] = '$r'.$i; } $funStr = $funStr.'mysqli_stmt_bind_result($stmt,'.implode(",", $bindResult).'); while (mysqli_stmt_fetch($stmt)){ $result[] = array('.implode(",", $bindResult).'); } return $result;'; $fun = create_function('$s', $funStr); return $fun(); } /** * 更新数据库内容 * @param $sql * @param $type * @param $param */ function update($sql,$type="",$param=null) { $funStr = '$stmt = mysqli_prepare(connectDB(),"'.$sql.'");'; if (empty($type)){ $funStr = $funStr.'mysqli_stmt_bind_param($stmt);'; } else { for ($i=0;$i<count($param);$i++) { $paramArray[] = '$p'.$i; $funStr = $funStr.'$p'.$i.'="'.$param[$i].'";'; } $funStr = $funStr.'mysqli_stmt_bind_param($stmt,"'.$type.'",'. implode(',', $paramArray).');'; } $funStr = $funStr.'mysqli_stmt_execute($stmt); if (mysqli_stmt_affected_rows($stmt)==1){ return true; } else { return false; }'; $fun = create_function('$s', $funStr); return $fun(); } /** * 获取、设定session值 * @param $key * @param $val */ function session($key=null,$val=null) { $prefix = getConfig("session->prefix"); if (is_null($key)) { return $_SESSION[$prefix]; } else { if (is_null($val)) { //获取指定值 return $_SESSION[$prefix][$key]; } else { //设定指定值 $_SESSION[$prefix][$key] = $val; return true; } } } /** * 跳转到URL * @param unknown_type $url */ function jump($url="index.php") { $jumpUrl = "<script>location.href='".$url."'</script>"; die($jumpUrl); } /** * url添加参数 * @param unknown_type $param */ function url($param=null) { if (is_null($param)) { $url=""; } else { $url="?".http_build_query($param); } return "index.php".$url; } ?>
相关文章推荐
- 配置文件操作.如config.php文件的读取修改等操作
- php中配置文件操作 如config.php文件的读取修改等操作
- PHP文件读写操作之文件读取方法详解
- php中配置文件操作 如config.php文件的读取修改等操作
- PHP文件读写操作之文件读取方法详解
- PHP 的ini配置文件的读写操作函数
- PHP中文件读写操作
- PHP中文件读写操作
- PHP 操作 XML 文件 - 读取、显示
- 对项目配置文件app.comfig进行读写操作
- C语言文件的读写操作,每次读取1K,然后写入另外一个文件
- java中经常用到的读写配置文件的信息properties属性的写入,读取例子
- 读取操作属性配置文件
- 无须修改php.ini等配置文件,修复session_start错误的方式
- VC++中,配置文件的读写操作
- php读写文件操作
- JAVA高手解析XML配置文件的读取操作
- PHP读取,写入MYSQL数据库文件操作
- PHP读取4种配置文件(php,ini,yaml,xml)
- 用PHP脚本在Linux系统上读取输入和对文件进行操作