文章来源:jquery教程?-?http://www.jq-school.com/Show.aspx?id=330
?
刚开始以为收集PHP技巧会有困难的,现在不知不觉又收集了25个了,其实PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor",注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。
?
PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf 为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。
?
后来又用C语言重新编写,包括可以访问数据库,他将这些程序和一些表单直译器整合起来,称为 PHP/FI,PHP/FI 可以和数据库连接,产生简单的动态网页程序,前端的网友如果学习后台开发的话可以选择PHP哇。
?
看一下前面已经分享的代码片段
1、PHP常用功能代码片段(1~5)
2、PHP常用功能代码片段(6~10)
3、PHP常用功能代码片段(11~15)
4、PHP常用功能代码片段(16~20)
今天是第5篇,主要有获取当前页面完整url地址、二维数组排序、获得一段时间内所在的所有周的时间、把字符内容转换为二进制、把二进制转换为字符内容等功能,也就是第21到25这5个实用代码片段,希望可以帮到jquery学堂群里面的成员和广大对PHP开发的网友们提高开发效率。
21、PHP实现获取当前页面完整url地址的函数
1 2 3 4 5 6 | function get_url(){
$url = (isset( $_SERVER [ 'SERVER_PORT' ]) && $_SERVER [ 'SERVER_PORT' ] == '443' ) ? 'https://' : 'http://' ;
$url .= $_SERVER [ 'HTTP_HOST' ];
$url .= isset( $_SERVER [ 'REQUEST_URI' ]) ? $_SERVER [ 'REQUEST_URI' ] : urlencode( $_SERVER [ 'PHP_SELF' ]) . '?' . urlencode( $_SERVER [ 'QUERY_STRING' ]);
return $url ;
}
|
로그인 후 복사
22、PHP实现二维数组排序的通用方法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function array_sort( $arr , $keys , $type = 'asc' ){
$keysvalue = $new_array = array ();
foreach ( $arr as $k => $v ){
$keysvalue [ $k ] = $v [ $keys ];
}
if ( $type == 'asc' ){
asort( $keysvalue );
} else {
arsort( $keysvalue );
}
reset( $keysvalue );
foreach ( $keysvalue as $k => $v ){
$new_array [ $k ] = $arr [ $k ];
}
return $new_array ;
}
|
로그인 후 복사
23、PHP实现获得一段时间内所在的所有周的时间
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | function getWeek( $startdate , $enddate )
{
if (! empty ( $startdate ) && ! empty ( $enddate )){
$startdate = strtotime ( $startdate );
$enddate = strtotime ( $enddate );
if ( $startdate <= $enddate ){
$end_date = strtotime ( "next monday" , $enddate );
if ( date ( "w" , $startdate )==1){
$start_date = $startdate ;
} else {
$start_date = strtotime ( "last monday" , $startdate );
}
$countweek =( $end_date - $start_date )/(7*24*3600);
for ( $i =0; $i < $countweek ; $i ++){
$sd = date ( "Y-m-d" , $start_date );
$ed = strtotime ( "+ 6 days" , $start_date );
$eed = date ( "Y-m-d" , $ed );
$arr []= array ( $sd , $eed );
$start_date = strtotime ( "+ 1 day" , $ed );
}
return $arr ;
}
}
}
|
로그인 후 복사
24、PHP实现把字符内容转换为二进制
function StrToBin($str){
1 2 3 4 5 6 7 8 9 10 11 | function StrToBin( $str ){
$arr = preg_split( '/(?<!^)(?!$)/u' , $str );
foreach ( $arr as & $v ){
$temp = unpack( 'H*' , $v );
$v = base_convert ( $temp [1], 16, 2);
unset( $temp );
}
return join( ' ' , $arr );
}
|
로그인 후 복사
25、PHP实现把二进制转换为字符内容
function BinToStr($str){
1 2 3 4 5 6 7 | function BinToStr( $str ){
$arr = explode ( ' ' , $str );
foreach ( $arr as & $v ){
$v = pack( "H" . strlen ( base_convert ( $v , 2, 16)), base_convert ( $v , 2, 16));
}
return join( '' , $arr );
}
|
로그인 후 복사
?