当前位置: 编程技术>php
本页文章导读:
▪无JS,完全php面向过程数据分页实现代码
代码如下: <?php //登陆页面设置的session,当session中存在name时 //session_start(); //$name = $_SESSION['name']; //if (empty($name)){ // header("Location: error.php"); // exit(); //} //面向过程, 数据分页显示 if(false!=($mys.........
▪php实现快速排序法函数代码
代码1: 代码如下: <?php function quicksort($str){ if(count($str)<=1) return $str;//如果个数不大于一,直接返回 $key=$str[0];//取一个值,稍后用来比较; $left_arr=array(); $right_arr=array(); for($i=1;$i<count(.........
▪php中3种方法统计字符串中每种字符的个数并排序
代码如下: <?php //这个方法纯粹是背函数,不解释; function countStr($str){ $str_array=str_split($str); $str_array=array_count_values($str_array); arsort($str_array); return $str_array; } //以下是例子; $str="asdfgfdas32334.........
[1]无JS,完全php面向过程数据分页实现代码
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
//登陆页面设置的session,当session中存在name时
//session_start();
//$name = $_SESSION['name'];
//if (empty($name)){
// header("Location: error.php");
// exit();
//}
//面向过程, 数据分页显示
if(false!=($mysql = mysql_connect('本地mysql', 'mysql用户名', 'mysql密码'))){
mysql_query('set names utf8',$mysql); //设置数据库中的编码
mysql_select_db("数据库database",$mysql);
}else{
die("连接失败");
}
$pageSize = 10; //页面显示条数
$rowCount = 0; //数据总条数,从数据库获得
$sqlCount = 'select count(id) from employee';
$res1 = mysql_query($sqlCount,$mysql);
//取出数据条数
if(false!=($row=mysql_fetch_row($res1))){
$rowCount = $row[0];
}
//总页数,通过计算得到
$pageCount = 0;
$pageCount = ceil($rowCount/$pageSize);
//获取当前页
if(!isset($_GET['pageNow'])){ // 当 get/post都为空的时候赋默认值1
$pageNow = 1; //当前页数
}elseif(false!=is_numeric($_GET['pageNow']) && $_GET['pageNow']<=$pageCount){
$pageNow = $_GET['pageNow'];
}else{
header("Location: ../Error/error.php");
exit();
}
//打印分页数据
echo "<div >";
echo "<table >";
echo "<tr><th>id</th> <th>name</th> <th>age</th> <th>sex</th> <th>birthday</th> <th>编辑雇员</th> <th>删除雇员</th> </tr>";
$sqList = "select id,name,age,sex,birthday from employee limit ".($pageNow-1)*$pageSize.",".$pageSize;
$res2 = mysql_query($sqList,$mysql);
while (false!=($row=mysql_fetch_assoc($res2))){
echo "<tr><td>{$row['id']}</td> <td>{$row['name']}</td> <td>{$row['age']}</td> <td>{$row['sex']}</td> <td>{$row['birthday']}</td> <td><a href=#>编辑</a></td> <td><a href=#>删除</a></td></tr>";
}
echo "</table>";
//表单控制显示页数
echo "<form action='/blog_article/当前页/index.html'>";
//上一页按钮
if($pageNow>1){
$pageUp = $pageNow-1;
echo "<a href='/blog_article/pageNow/.html".$pageUp."'>上一页</a> ";
}
//下一页按钮
if($pageNow<$pageCount){
$pageDown = $pageNow+1;
echo "<a href='/blog_article/pageNow/.html".$pageDown."'>下一页</a> <br/>";
}
//后退十页按钮
if($pageNow-10>0){
echo "<a href='/blog_article/pageNow/.html".($pageNow-10)."'><<<</a> ";
}
//向本页传递当前显示的页数,并显示第几页按钮
for($i=1;$i<=$pageCount;$i++){
if($i>$pageNow-2 && $i<$pageNow+6){
if($i!=$pageNow){
echo "<a href='/blog_article/pageNow/.html".$i."'>第".$i."页</a> ";
}
}
}
//前进十页
if($pageNow+10<=$pageCount){
echo "<a href='/blog_article/pageNow/.html".($pageNow+10)."'>>>></a> ";
}
//显示当前页与总页数
echo "<br/>当前页".$pageNow."页/共".$pageCount."页";
//跳转页
echo "跳转到:<input type='text' name='pageNow' id='pageNow' />页<input type='submit' value='go'/>";
echo "</form>";
echo "</div>";
?>
[2]php实现快速排序法函数代码
来源: 互联网 发布时间: 2013-11-30
代码1:
<?php
function quicksort($str){
if(count($str)<=1) return $str;//如果个数不大于一,直接返回
$key=$str[0];//取一个值,稍后用来比较;
$left_arr=array();
$right_arr=array();
for($i=1;$i<count($str);$i++){//比$key大的放在右边,小的放在左边;
if($str[$i]<=$key)
$left_arr[]=$str[$i];
else
$right_arr[]=$str[$i];
}
$left_arr=quicksort($left_arr);//进行递归;
$right_arr=quicksort($right_arr);
return array_merge($left_arr,array($key),$right_arr);//将左中右的值合并成一个数组;
}//以下是测试
$str=array(5,3,8,2,5,9,7,2,1,4,0);
print_r(quicksort($str));
?>
代码2:
/* @快速排序法*/
function quickSort($left,$right,$arr){
$l = $left;
$r = $right;
$pivot = $arr[($left+$right)/2];
$temp = 0;
while($l<$r){
while($arr[$l]<$pivot){
$l++;
}
while($arr[$r]>$pivot){
$r--;
}
if($l>=$r) break;
$temp = $arr[$l];
$arr[$l] = $arr[$r];
$arr[$r] = $temp;
if($arr[$l]==$pivot) --$r;
if($arr[$r]==$pivot) ++$l;
}
if($l==$r){
$l++;
$r--;
}
if($left<$r){
quickSort($left, $r, $arr);
}elseif($right>$l){
quickSort($l, $right, $arr);
}else{
return $arr;
}
}
代码如下:
<?php
function quicksort($str){
if(count($str)<=1) return $str;//如果个数不大于一,直接返回
$key=$str[0];//取一个值,稍后用来比较;
$left_arr=array();
$right_arr=array();
for($i=1;$i<count($str);$i++){//比$key大的放在右边,小的放在左边;
if($str[$i]<=$key)
$left_arr[]=$str[$i];
else
$right_arr[]=$str[$i];
}
$left_arr=quicksort($left_arr);//进行递归;
$right_arr=quicksort($right_arr);
return array_merge($left_arr,array($key),$right_arr);//将左中右的值合并成一个数组;
}//以下是测试
$str=array(5,3,8,2,5,9,7,2,1,4,0);
print_r(quicksort($str));
?>
代码2:
代码如下:
/* @快速排序法*/
function quickSort($left,$right,$arr){
$l = $left;
$r = $right;
$pivot = $arr[($left+$right)/2];
$temp = 0;
while($l<$r){
while($arr[$l]<$pivot){
$l++;
}
while($arr[$r]>$pivot){
$r--;
}
if($l>=$r) break;
$temp = $arr[$l];
$arr[$l] = $arr[$r];
$arr[$r] = $temp;
if($arr[$l]==$pivot) --$r;
if($arr[$r]==$pivot) ++$l;
}
if($l==$r){
$l++;
$r--;
}
if($left<$r){
quickSort($left, $r, $arr);
}elseif($right>$l){
quickSort($l, $right, $arr);
}else{
return $arr;
}
}
[3]php中3种方法统计字符串中每种字符的个数并排序
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
//这个方法纯粹是背函数,不解释;
function countStr($str){
$str_array=str_split($str);
$str_array=array_count_values($str_array);
arsort($str_array);
return $str_array;
}
//以下是例子;
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas";
print_r(countStr($str));
?>
<?
//这个方法有些数据结构的思想,不过还是很好理解的:)
function countStr2($str){
$str_array=str_split($str);
$result_array=array();
foreach($str_array as $value){//判断该字符是否是新出现的种类,是的话就设置为1,不是的话就自加;
if(!$result_array[$value]){
$result_array[$value]=1;
}else{
$result_array[$value]++;
}
}
arsort($result_array);
return $result_array;
}
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas";
var_dump(countStr2($str))
?>
<?php
//这个方法纯粹是解法一的蹩脚版本,先找出所有字符的总类,然后在一个一个用substr_count函数统计。
function countStr3($str){
$str_array=str_split($str);
$unique=array_unique($str_array);
foreach ($unique as $v){
$result_array[$v]=substr_count($str,$v);
}
arsort($result_array);
return $result_array;
}
$str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas";
var_dump(countStr3($str));
?>
*无论是用哪一个方法,都要用到str_split函数,所以说,这个函数很重要哦~
最新技术文章: