php的做为web编程语应用是非常广的,做为一个php程序员要知道并总结一些应用写法方式以方便日常的开发。
1、自动判断当前http协议类型,这个应用还是我在支付宝SDK中发现的,是一个不错的写法。
$protocol=(!empty($_SERVER['HTTPS'])$_SERVER['HTTPS']!=='off'||$_SERVER['SERVER_PORT']==443)?https://:www.300.cnserbanghita/Mobile-Detect/
require_once'Mobile_Detect.php';
$detect=newMobile_Detect;
$deviceType=($detect-isMobile()?($detect-isTablet()?'tablet':'phone'):'computer');
3、php通过curl上传文件,特别注意的是下面的file路径,如果在windows环境下,在realpath后的路径前面加上@字符是可以正常发送的。如果在linux中是不能正常发送的。正确的写法是curl_file_create($fileurl)
$fileurl=realpath($fileObj-getRealFile());//获取文件的实际物理路径
$post_data=array(
'token'='88e780d49ff812c644c89ff31e5de196',
file=curl_file_create($fileurl),
);
4、php生成二维码,使用的是PHPQRcode。
5、PHP浮点数精度丢失问题解决方案。原则:在进行浮点数计算的时候一定要对浮点数进行格式化!再代入进行计算处理。
var_dump(intval(sprintf(%.2f,$f*100)));//string'5
8.00'//int58
var_dump(intval(round($f*100,1)));//float58//int58
var_dump(intval(number_format($f*100,2)));//string'5
8.00'//int58
6、根据IP定位用户所在城市信息
使用第三方ip库来获取内容:http://www.ipip.net/download.html
7、随机排列数组。shuffle()函数把数组中的元素按随机顺序重新排列。常在数据库中查出数据后,用这个函数处理一下就可以生成随机排列的新数组
8、php获取上传文件大小函数
/**
*文件大小格式化
*@paramtype$filename文件路径
*/
functiongetFilesize($filename){
$filename=$_SERVER['DOCUMENT_ROOT']..$filename;
$size=filesize($filename);
$mod=1024;
$units=explode('','BKBMBGBPB');
for($i=0;$size$mod;$i++){
$size/=$mod;
}
returnround($size,2).''.$units[$i];
}