• 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 0

    2.3PHP之浮点型和字符串

    Posted by 撒得一地 on 2015年9月28日 in PHP入门教程
    国外稳定加速器推荐    Express | Vypr

    Float 浮点型
    浮点型(也叫浮点数 float,双精度数 double 或实数 real)。浮点数据类型可以用来存储数字,也可以保存小数。它提供的精度比整数大得多。在32位操作系统中,它的有效范围是1.7E-308——1.7E+308。在php4.0以前的版本,浮点型被标识为double,也叫做双精度浮点数。两张没有区别。
    浮点数默认有下面两种书写格式:

    3.14
    -99.3
    

    还有一种是用科科学记数法表示:

    1.2E2 //即120
    44.42E-3 //即0.04442
    

    可以用以下任一语法定义: 

    <?php
    $a  =  1.234 ; 
    $b  =  1.2e3 ;//1.2*10^3即1200
    $c  =  7E-10 ;//0.0000000007
    ?>
    
    用正则表达式表示浮点型:
    LNUM          [0-9]+
    DNUM          ([0-9]*[\.]{LNUM}) | ({LNUM}[\.][0-9]*)
    EXPONENT_DNUM [+-]?(({LNUM} | {DNUM}) [eE][+-]? {LNUM})
    其中"+"代表出现前面的数一次或多次,"*"代表出现前面的数0次或多次。
    

    注意:浮点数的精度有限。尽管取决于系统,PHP 通常使用 IEEE 754 双精度格式,则由于取整而导致的最大相对误差为 1.11e-16。
    所以使用浮点数进行加减比较操作时好格外小心,防止数据丢失或者溢出。例如:floor((0.1+0.7)*10)值是7,因为0.1+0.7的值可能是7.999999999….也就是说浮点型的数值只是一个近似值,所以尽量不要在浮点型数值之间比较大小,因为最后的结果经常是不准确的。

    String 字符串
    一个字符串 string 就是由一系列的字符组成,其中每个字符等同于一个字节。这意味着 PHP 只能支持 256 的字符集,因此不支持 Unicode。
    字符串是连续的字符序列,由数字、字母和符合组成。其中有3种定义字符串的方式,分别是单引号(')、双引号(")和界定符(<<<)
    其中用的最多的是单引号和双引号的定义方式。定义格式如下:

    <?php
    $a = "abc123cd";
    $b = 'adf3233#';
    $c = "123";
    echo "ccc$c"; //输出ccc123
    echo 'ccc$c'; //输出123$a
    ?>
    

    单引号和双引号的不同之处在于,双引号包含的变量会自动被替换成实际数值,而单引号中包含的变量按普通字符串输出。所以,当使用单引号表示字符串时,如果字符串里面要表达一个单引号自身,需要在她前面加个反斜线(\)来转义。要表达一个反斜线自身,则用两个反斜线(\\)。当使用双引号表示字符串时,还要注意“"”、"$"等字符的使用。这些特殊字符都要通过转义符"\"来显示。

    <?php
    $a = 12;
    echo '23ff\'';//输出23ff'
    echo "123\"\\";//输出123"\
    echo "123\$a";//输出123$a
    

    界定符<<<
    界定符(<<<)是从php4.0开始支持的。在使用时后接一个标识符,然后是字符串,最后是同样的标识符字符串。界定符的格式如下:

    $string = <<<str
    你要输出的内容
    str;
    

    注意:str标识符可以根据你的需要进行命名,标识符的命名:只能包含字母、数字和下划线,并且必须以字母和下划线作为开头。要注意的是结束标识符这行除了可能有一个分号(;)外,绝对不能包含其它字符。这意味着标识符不能缩进,分号的前后也不能有任何空白或制表符。起始标识符的左侧是可以有空格的。
    界定符对文本的处理,和双引号一样,即\r\n\t,变量,等,能解析出来. 

    到了5.3.0之后, 又新增了nowdoc方式。格式如下:

    $str = <<<'cont'  
    又一字符串
    cont
    

    与界定符区别的是起始标识符用单引号括起来,这样,大段文本的解析,就和单引号一样的效果. 不转义 \n \r \t,变量等等 

    下面看个例子:

    <?php
    echo <<<str
    123\n456
    str;  
    ?>
    上面输出:
    123
    456
    
    <?php
    echo <<<'str'
    123\n456
    str;  
    ?>
    上面输出:
    123\n456
    
    

    存取和修改字符串中的字符

    string 中的字符可以通过一个从0开始的下标,用类似数组结构中的方括号包含对应的数字来访问和修改,比如 $str[42],也可用花括号访问,比如 $str{42} 。举个例子:

    <?php
    $str = "123abc321";
    //输出3,字符串第一位用0表示,第二位用1表示 以此类推
    echo $str{2}."</br>";
    $str{2} = 4;
    echo $str; //输出124abc321
    

    注意:用超出字符串长度的下标写入将会拉长该字符串并以空格填充。非整数类型下标会被转换成整数。
    非法下标类型会产生一个 E_NOTICE  级别错误。用负数下标写入字符串时会产生一个 E_NOTICE  级别错误,用负数下标读取字符串时返回空字符串。写入时只用到了赋值字符串的第一个字符。用空字符串赋值则赋给的值是 NULL 字符。 

    标签:, ,

    上一篇:

    下一篇:

    相关推荐

    发表评论

    电子邮件地址不会被公开。 必填项已用*标注

    7 + 8 = ?

    网站地图|广东快乐10分开奖直播

    Copyright © 2015-2019 广东快乐10分开奖直播 All rights reserved.
    闽ICP备15015576号-1,版权所有?psz.

  • 周蓬安.blog的博客—强国博客—人民网 2019-05-10
  • 紫光阁中共中央国家机关工作委员会 2019-05-10
  • 感触名家笔下的端午文化吃香粽原来可以这样文艺 2019-05-09
  • 追梦夺冠游行嘲讽詹皇 百万人面前穿订制T恤羞辱他 2019-04-27
  • 《瘟疫传说》:黑死病恐怖 姐弟在绝望中求生 2019-04-10
  • 陕西国防工业职业技术学院百名大学生志愿者敬老院慰问孤寡老人陕西国防工业职业技术学院百名大学生志愿者敬老院慰问-陕西教育新闻 2019-04-08
  • 西藏拉萨:新家园 新生活 2019-04-08
  • 尊重和保障宗教信仰自由的中国实践 2019-04-06
  • 一敬泯恩仇 俄罗斯队主帅这个动作太暖了 2019-03-20
  • 四大名著剧组首次同台忆往事 经典影视剧如何铸就? 2018-12-07
  • “天眼”凝望 探秘宇宙 2018-12-07
  • 快乐飞艇统一开奖吗 左岸春风一语断蓝 足彩 北京pk10骗局陷阱 排列五走势图最近80期 福建福彩 中国体彩网官方 新疆时时彩开奖走趋图 新时时彩保号法 雪缘园足彩胜负彩开奖 18296期排列5 福彩3d试机号出现情况统计 p3开机号试机号列表 江苏时时彩快三 足彩进球彩预测 3d241期彩经网