当前位置:Gxlcms > PHP教程 > php开发总结

php开发总结

时间:2021-07-01 10:21:17 帮助过:8人阅读

1.mysql取得新生成自动编号的ID

$id=mysql_insert_id(); //取得刚插入的ID

2.php 如何判断网络是否连通

$url = "http://www.163.com/test.html";
$file=@fopen($url,"r");
if (!$file){
echo "";
exit;
}
?>

3.判断任意日期是星期几

$date="2009-03-22";
$datearr=explode("-",$date);
$year=$datearr[0];
$month=sprintf('%02d',$datearr[1]);
$day=sprintf('%02d',$datearr[2]);
$hour=$minute=$second=0;
$dayofweek=getdate(mktime($hour,$minute,$second,$month,$day,$year));
$weekday=$dayofweek['weekday'];
$wday=$dayofweek['wday'];
echo $weekday."
";; //得到星期几的英文名称
echo $wday."
";
?>

4.mysql 查询区分大小写的解决方案

今天突然发现一条查询语句执行时,居然区分大小写

如:select * from 表 where abc='BITS' 如果 abc='bits' 就查不出结果

于是上网查询,可惜查不到结果,只说在windows下mysql不区别字段大小写, 倒是有很多告诉你如何去设置区分大小的方法.

郁闷~

于是,我换了一张表,发现这张表不区分大小写, 我想问题出在字串编码上,查了一下,正常的这个表的字段是gbk_chinese_ci,出错的字段是gbk_bin

答案找到了

5.PHP-Javascript“返回上一页”无缓存问题

很多用PHP写脚本的朋友都会遇到这样的问题,比如一个注册页面(不使用任何AJAX),需要填写账号密码等信息,填写完后需要到服务端验证,如果验证不通过,就要让用户重新填写资料,这对很多用户来说这是一大煎熬,有可能就因此放弃了注册。遇到这种问题,一般有这几种解决方法:

1.仍然调用刚才的页面,输出错误提示,并把中 value的值改为刚才用户输入的值。这应该是最好的方法,但缺点是要在这个页面的的VALUE进行处理,比较麻烦。

2.还有很多懒人像我一样,遇到验证不通过,直接输出一个出错提示页面,并在页面中加入JavaScript的代码:

返回

返回
这个代码是返回上一页的代码,返回后,除了密码类型的所有数据均会保留在网页中,这算是比较友好了。

但有很多朋友反应使用JS的返回后,网页上并没有数据的缓存,有时候却又有,真让人捉摸不定。前几天我在开发的时候也碰到了这个问题,上网Google许久未果,只好又从自己的代码分析入手。这时候,一句session_start(); 引起了我的注意。session_start(); 是开启 $_SESSION 会话的函数,开启SESSION后,似乎是每次访问一个网页都要重新调用一次网页。我把这句话去掉以后,问题就解决了。如果遇到网页数据不能缓存的,不妨去掉SESSION试试

6.计算当前日期所在月的第一天,最后一天的日期

php计算当前日期所在周的第一天,最后一天的日期.
function w_fl($i_date)
{
$w_last=date("Y-m-d",strtotime("Sunday",strtotime($i_date)));
return array(
date("Y-m-d",strtotime("-6 days",strtotime($w_last))),
$w_last
);
}

php计算当前日期所在月的第一天,最后一天的日期.
function m_fl($i_date){
$m_first=date("Y-m-01",strtotime($i_date));
return array($m_first,date("Y-m-d",strtotime("+1 month -1day",strtotime($m_first))));
}

$ok=m_fl(date('Y-m-d'));
echo $ok[0]; //月初
echo $ok[1];//月末

7. php无法删除cookie的解决方案

昨天在作logout.php的cookie删除时,发现怎么也无法清除cookie

注册cookie时用以下代码:

setcookie("iwho","耿良",0,"/","");

按照手册上的标准退出代码为: setcookie("iwho", "", time() - 3600);// 将过期时间设为一小时前

但发现根本无法起作用,翻到以前的php4的书,打开查了用 setcookie("iwho") 直接删除,倒是起效果了,但是发现程序再登陆却无法注册cookie了,

看来php4根本无法与php5兼容.今天试了一下这个代码:

setcookie("iwho", "", time() - 3600,"/","");

起效,一切正常了,看来,应该按照注册时的格式(Cookie 必须用和设定时的同样的参数才能删除。),注明要删除的cookie路径

8.如何用php取得一个网页的html代码?

$url="http://www.myukt.com/index.php";
$html=implode("\n",file($url));
echo $html;
?>

9.取整函数ceil,floor,round,intval

经常用到的PHP取整函数,主要是:ceil,floor,round,intval

ceil -- 进一法取整
说明
float ceil ( float value )
返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

例子 1. ceil() 例子

echo ceil(4.3); // 5
echo ceil(9.999); // 10
?>


floor -- 舍去法取整
说明
float floor ( float value )
返回不大于 value 的下一个整数,将 value 的小数部分舍去取整。floor() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。

例子 1. floor() 例子

echo floor(4.3); // 4
echo floor(9.999); // 9
?>


round -- 对浮点数进行四舍五入
说明
float round ( float val [, int precision] )
返回将 val 根据指定精度 precision(十进制小数点后数字的数目)进行四舍五入的结果。precision 也可以是负数或零(默认值)。

例子 1. round() 例子

echo round(3.4); // 3
echo round(3.5); // 4
echo round(3.6); // 4
echo round(3.6, 0); // 4
echo round(1.95583, 2); // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2); // 5.05
echo round(5.055, 2); // 5.06
?>

intval---对变数转成整数型态

例子intval()

echo intval(4.3); //4

echo intval(4.6); // 4

?>

10.php使用ImageCreateFromJPEG() 颜色丢失的非常厉害

使用ImageCreateFromJPEG() ,改变尺寸输出,颜色丢失的非常厉害!
而ImageCreateFromGIF() 和 ImageCreateFromPNG() 就没事。

人气教程排行