PHP那些琐碎的知识点(整理)

2019-05-01 14:49:34丽君

PHP不会检查单引号 '' 字符串中变量内插或(几乎)任何转义序列,所以采用单引号这种方式来定义字符串相当简单快捷。但是,双引号 "" 则不然,php会检查字符串中的变量或者转义序列,并输出变量和转义序列的值。

$a = "123";
print '$at';
print '$a';

输出:

$at$a

如果是双引号 "" :

$a = "123";
print "$at";
print "$a";

输出:

注意:

单引号 '' 可以解释 ' 和 这俩转义字符,就这俩!

能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断)。

单引号 '' 和双引号 "" 都可以用来

echo 和 print的区别:

这两都是语句,不是函数;这俩语句的作用都是输出字符串。但是:

echo 可以传入多个参数。而 print 只有一个:

echo "123", "123";//输出123123
print "123", "123";//报错,只可以写一个参数 print "123";

echo 无返回值,而 print 返回值恒为1;

注意:

PHP的八中数据类型,除了数组 array 和没有实现 __toString 魔法函数的对象都可以用echo或者print来输出,并且 boolean 类型的用echo或者print来输出,只会显示1或者不显示。

echo true; //输出1
echo false; //什么都不输出

数字和字符串相加:

PHP会自动完成字符串和数字的转换,这样有时候会带来好处,有时候却很让人苦恼。

echo 1 + "2";//输出3
echo 1 + "a";//输出1

$a = 1 + "A"; 试问变量 $a 的数据类型?

if(is_numeric($a)){
  echo "是整型";
}
else{
  echo "是其他类型";
}
//最后输出:是整型

随机数生成函数 rand() 和 mt_rand() 的区别:

rand() 和 mt_rand() 用法完全一致,它俩分别有两种用法:

//第一种用法:
rand();//产生的随机数为0到getrandmax()之间
mt_rand();//产生的随机数为0到mt_getrandmax()之间
//第二种用法:
rand($min, $max);//产生从$min到$max之间的随机数
mt_rand($min, $max);//产生从$min到$max之间的随机数

区别: mt_rand() 是更好地随机数生成器,因为它跟 rand() 相比播下了一个更好地随机数种子;而且性能上比 rand() 快4倍, mt_getrandmax() 所表示的数值范围也更大

BCMath库和GMP库的区别:

BCMath库很容易使用。将数字作为字符串传入函数,它会将数字的和(或差,积等)作为字符串返回。不过,使用BCMath时,对数字所能完成的操作仅限于基本算术运算。

$sum = bcadd("12345678", "87654321");//$sum = "99999999"								 
			 
相关文章 大家在看