PHP支持8种原始数据类型

四种标量类型:

  boolean | integer | float(as double) | string

两种复合类型:

  array | object

两种特殊类型

  resource | NULL

其中,整形的最大值根据机器而定,PHP_INT_MAX保存的就是最大值;

如果想查看某个表达式的值和类型,使用var_dump()函数查看

gettype()函数可以得到表达式的类型,进而用于调试;

is_type()函数可以查看某个类型:

  eg: is_int() | is_string() | etc

通过settype()函数将变量强制转换为某类型;

整数溢出:如果一个数超出了int的范围,将会被解释以及运算结果返回float;

======================================================

一个字符串有4中表达方式:

(1)单引号

在单引号中,除了'和\,两个字符需要转义,其他的任何方式的反斜线都会当成反斜线本身;

(2)双引号

双引号中可以解析特殊字符

\n 换行 | \r 回车 | \t 水平制表符 | \e ESCAPE | \f 换页 | \\ 反斜线 | \$ 美元 | \" 双引号

(3)Heredoc结构: <<< LABLE

在该运算符后要提供一个标识符,然后换号,接下来是string本身,最后要用前面定义的标识符作为结束标志,结束时所引用的标识符必须在该行的第一列。

eg:

   $str = <<<EOO
  HELLO
  WOLD 
  EOO;

(4)Nowdoc结构:<<< 'LABLE'

heredoc结构类似于双引号字符串,Nowdoc类似于单引号字符串,不进行解析操作。适合用于嵌入PHP代码或其他打断文本而无需对其中的特殊字符进行转移。与heredoc不同的是标记需要用单引号标记。

(5)变量解析

当字符串用双引号 or heredoc定义时,其中的变量会被解析。

当PHP遇到一个$时,会组合尽量多的表示以形成一个合法的变量名。因此,可以用花括号{}来明确变量名的界限。

===================================================

数组

通过array()定义数组,PHP中的数组实际上是一个有序映射,将values关联到keys。

5.4起可以用[]代替array()

eg:

  $array = array("foo"=>"bar");
  $array = ["foo"=>"bar"];

如果数组定义中多个单元都使用了同一个键名,则只使用最后一个,之前的都被覆盖。

key 为可选项。如果未指定,PHP 将自动使用之前用过的最大 integer 键名加上 1 作为新的键名。

=======================================================

对象的简单语法:

 <?php
class foo
{
function do_doo()
{
echo "doing foo";
}
}
$bar = new foo;
$bar->do_foo();
?>

走入PHP-数据类型和字符串语法的更多相关文章

  1. 对象转型、迭代器Iterator、Set集合、装箱与拆箱、基本数据类型与字符串的转换、TreeSet集合与对象

      包的声明与定义 需要注意的是,包的声明只能位于Java源文件的第一行. 在实际程序开发过程中,定义的类都是含有包名的: 如果没有显式地声明package语句,创建的类则处于默认包下: 在实际开发中 ...

  2. Java中不同转换符实现不同数据类型到字符串的转换

    String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. form ...

  3. Java学习笔记之:Java引用数据类型之字符串

    一.简介 字符串广泛应用在Java编程中,在Java中字符串属于对象,Java提供了String类来创建和操作字符串. 创建字符串最简单的方式如下: String greeting = "H ...

  4. Python第三天 序列 数据类型 数值 字符串 列表 元组 字典

    Python第三天 序列  数据类型  数值  字符串  列表  元组  字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...

  5. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

  6. python基本数据类型之字符串(五)

    python基本数据类型之字符串(五) 遍历与查找 python中的字符串属于可迭代对象,通过一些方法可以遍历字符串中的每一个字符.而查找的方法主要有两个:find与index. 1.字符串的遍历 字 ...

  7. python基本数据类型之字符串(四)

    python基本数据类型之字符串(四) 判断方法 python中有一类用来判断字符串形式的方法,该类方法有两个特点:(1)方法名都是is开头(除了startswith和endswith):(2)返回值 ...

  8. python基本数据类型之字符串(三)

    python基本数据类型之字符串(三) 转换和判断方法 在python中,有一些内置方法可以将字符串转化特定形式,而与之对应的一些方法可以判断字符串是否符合某些形式.因此,在这篇文章中,笔者把转换方法 ...

  9. python基本数据类型之字符串(二)

    python基本数据类型之字符串(二) 替换方法 python中字符串的替换方法主要有:center.rjust\ljust.expandtabs.format\format_map(格式化).str ...

  10. Python基础数据类型之字符串

    Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >> ...

随机推荐

  1. Runloop -------iOS

    正文 1.Runloop是什么? Runloop是线程的基础架构部分.是一个事件循环处理.是用来不停的调配工作(可以节省CPU)和处理输入事件(输入源(input source)和定时源(timer ...

  2. Swift 网络请求数据与解析

    一: Swift 网络数据请求与处理最常用第三方 又有时间出来装天才了,还是在学swift,从中又发现一些问题,这两天上网找博客看问题弄的真的心都累.博客一篇写出来,好多就直接照抄,就没有实质性的把问 ...

  3. C#数组和集合

    一维数组 概述:数组是通过指定数组的元素类型.数组的(秩)维数及数组每个维度上的上限和下限来定义的,及一个数组的定义需要包含以下几个要素. 类型   数组的维数   每个维的上限下限 声明:数据类型  ...

  4. 网易云直播SDK使用总结

    前言: 最近公司的项目中加入中直播这部分的功能,现在的直播平台真的很多很多,以前在朋友圈看到过这张图片,没办法一次性给大家看,就只能这样截成几张给大家看看.其实按照我自己的看法,现在的直播已经没办法做 ...

  5. JS判断客户端、浏览器、操作系统

    一.JS判断客户端是否是iOS或者Android手机移动端 通过判断浏览器的userAgent,用正则来判断手机是否是ios和Android客户端. 方法一: var u = navigator.us ...

  6. JavaScript中国象棋程序(4) - 极大极小搜索算法

    "JavaScript中国象棋程序" 这一系列教程将带你从头使用JavaScript编写一个中国象棋程序.这是教程的第4节. 这一系列共有9个部分: 0.JavaScript中国象 ...

  7. Linux下SVN服务器搭建配置

    Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...

  8. BZOJ 1103: [POI2007]大都市meg(dfs序,树状数组)

    本来还想链剖的,结果才发现能直接树状数组的= = 记录遍历到达点与退出点的时间,然后一开始每个到达时间+1,退出时间-1,置为公路就-1,+1,询问直接点1到该点到达时间求和就行了- - CODE: ...

  9. canvas实例:旋转缩放的方块

    首先在页面中创建一个canvas标签: <body> <canvas id="c1" width="500" height="500 ...

  10. JS特效——图片水平滚动

    具体源码如下: <!doctype html> <html lang="en"> <head> <meta http-equiv=&quo ...