phalcon—— PHP基础知识(一)

1、变量和常量

1.一、变量名(标示符)

1)变量:$开头标志
2)变量名:可以由字母。数字,_ 3者组成,不能用数字开头php

3)标识符是区分大写和小写的。但函数名不区分大写和小写。html

4)变量名称可以与函数名称一样,尽管是赞成的。但应尽可能避免混淆。java

PHP不要求在使用变量以前声明变量,当第一次给一个变量赋值时。才建立了这个变量。express


好比:
数组

$3age;//错
$_ = 6;//可以
$*p = 30;//错


1.二、数据类型

1) Integer: 用来表示整数。cookie

2) Float: 用来表示所有实数。函数

3) String: 用来表示字符串。spa

4) Boolean: 用来表示true或false。命令行

5) Array: 用来保存具备一样类型的多个数据项。scala

6) Object: 用来保存类的实例。

PHP可以在不论什么时间依据保存在变量中的值来肯定变量的类型,当需要强制类型转换时可以依照java的语法来转换

好比:

$icount = 0;
$fcount = (float)$icount;

1.三、常量的定义

常量可以保存一个值,但是程序一旦初始化以后,常量的值就不能改变。

define('PI', 3.14159);
echo PI;

常量通常用大写表示,用define函数定义,并且不用$符号标识。

  • 常量前面没有美圆符号($);
  • 常量仅仅能用 define() 函数定义。而不能经过赋值语句;
  • 常量可以不用理会变量的做用域而在不论什么地方定义和訪问;
  • 常量一旦定义就不能被又一次定义或者取消定义;
  • 常量的值仅仅能是标量。



1.四、变量做用域

做用域指在一个脚本中某个变量可以使用或可见的范围。PHP具备6项主要的做用域规则。

1) 内置超级全局变量可以在脚本中的不论什么地方使用。

好比:

$GLOBALS: 所有全局变量数组。

$_SERVER: server环境变量数组

$_GET: GET方法传递给该脚本的变量数组

$_POST: POST方法传递给该脚本的变量数组

$_COOKIE: cookie变量数组

$_FILES: 与文件上传相关的变量数组

$_ENV: 环境变量数组

$_REQUEST: 所有用户输入的变量数据,包含$_GET、$_POST和$_COOKIE

$_SESSION: 会话变量数组

2) 常量一旦被声明。可以在全局可见。

3) 在脚本中声明的全局变量在全脚本中是可见的。

4) 函数内部使用的变量声明为全局变量时,名称要与全局变量名称一致。

5) 函数内部建立并声明为静态的变量在函数外不可见,但在函数的屡次运行过程当中保持该值。

6) 函数内部建立的变量是本地的,当函数终止时,该变量也就不存在。


2、运算符或操做符

2.一、算数运算符

算术操做符也就是数字操做符。通常用于整型或双精度类型的数据。假设应用在字符串中。PHP会试图将这些字符转换成一个数字,假设当中包括"e"或"E",它会被看成是科学表示法并被转换成浮点数,不然将会被转换成整数。PHP会在字符串開始处寻找数字。并且使用这些数字做为该字符串的值。假设没有找到数字,则该字符串的值为0。

操做符

名称

演示样例

+

$a + $b

-

$a - $b

*

$a * $b

/

$a / $b

%

$a % $b





                                                                                                               



2.二、字符串链接

利用“.”

$string = "hello"." world";

2.三、赋值运算

复合赋值操做符

操做符

用法

等价于

+=

$a += $b

$a = $a + $b

-=

$a -= $b

$a = $a - $b

*=

$a *= $b

$a = $a * $b

/=

$a /= $b

$a = $a / $b

%=

$a %= $b

$a = $a % $b

.=

$a .= $b

$a = $a . $b











2.四、引用

引用操做符"&"可以在关联赋值中使用。引用至关于一个别名,而不是一个指针,它使两个变量指向一样的内存地址,可以使用unset来重置

好比:

$a = 1;
$b = &$a;
$b = 2;
unset($a);

2.五、比較运算

比較操做符

操做符

名称

用法

==

等于

$a == $b

===

恒等

$a === $b

!=

不等

$a != $b

!==

不恒等

$a !== $b

<>

不等

$a <> $b

<

小于

$a < $b

>

大于

$a > $b

<=

小于等于

$a <= $b

>=

大于等于

$a >= $b















2.六、逻辑运算

逻辑操做符

操做符

名称

用法

!

!$b

&&

$a && $b

||

$a || $b

and

$a and $b

or

$a or $b

xor

异或

$a xor $b











2.七、位运算

位操做符

操做符

名称

用法

&

按位与

$a & $b

|

按位或

$a | $b

~

按位非

~$a

^

按位异或

$a ^ $b

<<

左位移

$a << $b

>>

右位移

$a >> $b











2.八、其它

1) 逗号操做符

逗号操做符","用来分隔函数參数和其它列表项,这个操做符经常被附带使用。

2) 类操做符

"new"和"->"分别用来初始化类的实例和訪问类的成员。

3) 三元操做符

三元操做符"? :"相似于条件语句if-else的表达式版本号,语法格式例如如下:

condition ?

value if true : value if false


4) 错误抑制符

错误抑制符"@"可以在不论什么表达式前使用,使用这个操做符。可以抑制代码产生的警告。

5) 运行操做符

运行操做符是一对操做符,它是一对反向单引號"` `",PHP将试着将反向单引號之间的命令看成server端的命令行来运行,表达式的值就是命令的运行结果,好比:

echo `ls -l`;


6) 类型操做符

"instanceof"操做符赞成检查一个对象是不是特定类的实例,好比:

if ($object instanceof sampleClass)
  echo "Object is an instance of sampleClass";

2.九、操做符优先级以及结合性

由低到高例如如下:

操做符优先级

结合性

操做符

,

or

xor

and

print

= += -= *= /= .= %= &= != ^= ~= <<= >>=

? :

||

&&

!

^

&

不相关

== != === !==

不相关

< <= > >=

<< >>

+ - .

* / %

! ~ ++ -- (type) @

[ ]

不相关

new

不相关

()


























3、測试函数与測试变量

3.一、PHP提供了特定类型的測试函数。

好比:

1) is_array(): 检查变量是不是数组。

2) is_double()、is_float()、is_real(): 检查变量是不是浮点数,所有函数一样。

3) is_long()、is_int()、is_integer(): 检查变量是不是整数。所有函数一样。

4) is_string(): 检查变量是不是字符串。

5) is_bool(): 检查变量是不是布尔值。

6) is_object(): 检查变量是不是一个对象。

7) is_resource(): 检查变量是不是一个资源。

8) is_null(): 检查变量是否为null。

9) is_scalar(): 检查变量是不是标量,即整数、布尔值、字符串或浮点数。

10) is_numeric(): 检查变量是不是数字或数字字符串。

11) is_callable(): 检查变量是不是有效的函数名称。


3.二、測试变量状态

PHP有几个函数用来測试变量状态。

好比:

1) isset()

bool isset(mixed var[, mixed var[, ...]])

issset()需要一个变量做为參数。假设这个变量存在。则返回true,不然返回false。也可以传递一个由逗号间隔的变量列表,假设所有变量都被设置了,即返回true。

还可以使用与isset()相相应的unset()来销毁一个变量:

void unset(mixed var[, mixed var[, ...]])

2) empty()

bool empty(mixed var)

empty()可以用来检查一个变量是否存在,以及它的值是否为非空和非0,对应的返回值为true或false。

4、控制语句

4.一、if else

if (condition) {
  expression;
}
elseif (condition) {
  expression;
}
else {
  expression;
}

4.二、switch

switch (expression) {
  case value1:
    expression;
    break;
  case value2:
    expression;
    break;
  defalut:
    expression;
    break;
}

switch语句工做方式相似于if语句。但是它赞成条件可以有多于两个的可能值。在switch语句中,仅仅要条件是一个简单的数据类型,可以提供一个case语句来处理每一个条件值,并且提供对应的动做代码,此外另外一个默认的case条件来处理没有提供特定值的状况。

当switch语句中的特定case被匹配时。PHP将运行该case下的代码,直至遇到break语句,假设没有break语句。switch将运行这个case下面所有值为true的case中的代码。

4.三、while

while (condition) {
  expression;
}

4.四、for

for (expression1; condition; expression2) {
  expression3;
}

expression1在開始时仅仅运行一次。一般在这里设置计数器的初始值。

在每一次循环開始以前,condtion表达式将被測试,假设表达式的值为false,循环将结束。

expression2在每一次循环结束时运行。一般在这里调整计数器的值。expression3在每一次循环中运行一次。

4.五、do while

do {
  expression;
}
while (condition);

4.六、跳出控制结构

假设但愿中止一段代码的运行,可以有3种方法。

1) 假设但愿终止一个循环。可以使用break语句。脚本会从循环体后面的第一条语句開始运行。

2) 假设但愿跳到下一次循环,可以使用continue语句。

3) 假设但愿结束整个PHP脚本的运行,可以使用exit语句。

相关文章
相关标签/搜索