1.不用定义新变量直接交换现有两个变量的值
$a=7;
$b=2;
$a=$a+$b;
$b=$a-$b;
$a=$a-$b;
echo $a;
echo '<br/>';
echo $b;
2.简述以下输出语句的区别
echo :可以同时输出多个字符串,可以多个参数,并不需要圆括号,无返回值
var_dump():打印出变量的详细信息,无返回值
print:打印简单类型变量的值,成功返回整数 1
print_r : 打印出复杂类型变量的值,返回值是布尔型
die(xx):先输出内容,然后退出程序
3.打印出前一天的时间,格式如下 2017-3-17 15:46:00
echo date('Y-m-d H:i:s',strtotime('-1day'));
4.实现中文字串截取无乱码的方法
mb_substr():函数指定第四个参数字符编码
5.mysql表索引为什么使用B+树
@1.数据库数据文件很大,不可能存在内存,只能存入磁盘
@2.B+树的存储结构,索引文件中叶节点的data域存放的是数据记录地址,地址指向文件中对应的值
6.写出一个动态创建函数的范例
//方法一
$func = 'test';
function test(){
echo 'hah';
}
$func();
//方法二
$newfunc = create_function('$a','return $a+10;');
echo $newfunc(10);
7.时间字符串转时间戳
echo strtotime('2017-03-17 21:54');
8.以时间戳形式存数据库的好处
@1. int型字段查询更快,空间相对小
@2.便于做各种运算
@3.各种平台通用
9.下面语句输出的值是什么
$a = 'a';
$b = &$a;
unset($b);
$b = 'b';
echo $a; //a
@1.
unset()函数只能在变量值占用内存空间超过256字节时才会释放内存空间
@2.只有当指向该变量的所有变量(如引用变量)都被销毁后,才会释放内存
@3.unset函数只是切断了变量名与变量之间的关系。
10.将数字金额转换为大写格式
实现思路:
1.把单位和大写字符根据单位大小按照顺序存入数组
2.把数值对象格式化为标准的金额对象,循环遍历从数值的末尾开始取值
3.根据单个取出来的值,当做预定义的数组索引得到对应的单位和大写字符
function floatohz($value){ $result=''; $v_a=array('分','角','零','块','十','百','千','万','十','百','千','亿'); $v_b=array('零','一','二','三','四','五','六','七','八','九','十'); $v_c=array(); $value=(string)$value; $value=sprintf("%0.2f",$value); $len=strlen($value); var_dump($len); for($i=$len;$i>=0;$i--){ $val=$value[$i];//$VALUE字符串 if($val!='.'){ if($val!='0'){ $v_c[]=$v_b[$val].$v_a[$len-$i-1]; #通过数值大小,获取对应的单位与大写字符 }else{ $v_c[]=$v_b[$val];
} } } $v_c=array_reverse($v_c); foreach($v_c as $val){ $result.=$val; } unset($v_a);unset($v_b);unset($v_c); return $result; } $va = 10305.05; var_dump(floatohz($va));