知识学堂

Knowledges

您现在的位置:  首页 >> 网站推广 >> 正文

网站推广

【安米亚网络】每天五道题【第36-40题】巩固一下PHP基础知识

2018-11-15

  36. 数组合并函数array_merge()和数组加法运算$arr + $arr2 的区别是什么?
 
 array_merge()->使用array_merge(),如果是关联数组合并,如果数组的键名相同,那么后面的值将覆盖前者;如果是数字索引数组合并,则不覆盖,而是
 
 后者附加到前者后面。
 
 "+"->使用数组加法运算,与array_merge()不同,加法运算不管是关联数组还是数字索引数组,都是将相同键名的的值舍弃,
 
 也就是只保留首次出现该键名的元素,后来的具有相同键名的元素都不会被加进来。
 
 37. 字符串定义的时候单引号和双引号有什么区别?(重点)
 
 一般用单引号或双引号标识一个字符串。单引号串与双引号串,在PHP中的处理是不同的。双引号中的内容可以被解释并被替换,单引号串中的内容则被作为普通字符处理。
 
 例如:
 
 $str=6;
 
 echo "str is $str\n";
 
 echo 'str is $str\n';
 
 输出结果为
 
 str is 6
 
 str is $str\n
 
 注:单引号中输出的内容是“所见即所得”的,无论有无变量,都被当做普通字符原样输出。
 
 说明:在定义简单的字符串时,使用单引号是一个更加合适的处理方式。如果使用双引号,php将花费一下时间来处理字符串的转义和变量的解析。因此,建议在定义字符串时,如果没有特别的要求应尽量使用单引号。
 
 38. echo(),print(),print_r()的区别?(重点)
 
 (1)echo 是语法,Output one or more strings,没有返回值;
 
 (2)print 是函数,不能输出数组和对象,Output a string,print有返回值;
 
 (3)print_r 是函数,可以输出数组。print_r是个比较有意思的函数,可以输出stirng、int、float、array、object等,输出array时会用结构表示,print_r输出成功时返回true;而且print_r可以通过print_r($str,true)来,使print_r不输出而返回print_r处理后的值。此外,对于echo和print,基本以使用echo居多,因为其效率比print要高。
 
 39. 按照功能分类说说都有哪些字符串处理函数?这些函数的作用是什么?
 
 A. 字符串输出函数
 
 (1)echo $a,$b,$c......;  是一个语言结构,而不是一个真正的函数。
 
 (2)print($a)    本函数输出字符串。若成功则返回 1,失败返回 0
 
 (3)print_r($a)
 
 (4)var_dump($a); 能输出类型、长度、值
 
 B. 去除字符串首尾空格的函数: trim  ltrim  rtrim(别名:chop)   使用第二个参数,还可以去除指定的字符。
 
 C. 转义字符串函数:addslashes()
 
 D. 获取字符串长度的函数:strlen()
 
 E. 截取字符串长度的的函数:substr()
 
 F. 检索字符串函数: strstr() , strpos()
 
 G. 替换字符串函数:str_replace()
 
 40. 请给出以下问题的正确答案?
 
 1).$arr = array('james', 'tom', 'symfony');请将$arr数组的值用’,’分割并合并成字符串输出?
 
 echo implode(‘,’,$arr);
 
 2).$str = ‘jack,james,tom,symfony’; 请将$str用’,’分割,并把分割后的值放到$arr数组中?
 
 $arr = explode(‘,’,$str);
 
 3).$arr = array(3,7,2,1,’d’,’abc’); 请将$arr按照从大到小的顺序排序,并保持其键值不变?
 
 arsort($arr); print_r($arr);
 
 4).$mail = “gaofei@163.com”; 请将此邮箱的域(163.com)取出来并打印,看最多能写出几种方法?
 
 echo strstr($mail,'163');
 
 echo substr($mail,7);
 
 $arr = explode("@",$mail); echo $arr[1];
 
 5). 如果有一个字符串,该字符串是“123,234,345,”。请问如何切割掉这个字符串最后一个逗号? echo rtrim($str, ",");
 
 6). 获取随机数的函数有哪几个?mt_rand() 和 rand()哪个执行速度快?
 
 对比:
 
 mt_rand()是更好地随机数生成器,因为它跟rand()相比播下了一个更好地随机数种子;而且性能上比rand()快4倍,mt_getrandmax()所表示的数值范围也更大
------分隔线----------------------------