Hello World##
My first PHP page
在线运行
PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。
变量##
在线运行
PHP 变量规则:
- 变量以 $ 符号开始,后面跟着变量的名称
- 变量名必须以字母或者下划线字符开始
- 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
- 变量名不能包含空格
- 变量名是区分大小写的($y 和 $Y 是两个不同的变量)
当赋一个文本值给变量时,在文本值两侧加上引号.
在线运行
不必向 PHP 声明该变量的数据类型。
PHP 会根据变量的值,自动把变量转换为正确的数据类型。
在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。PHP是一门弱类型语言.
PHP 有四种不同的变量作用域:
- local
- global
- static
- parameter
在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。
在 PHP 函数内部声明的变量是局部变量**,仅能在函数内部访问:
在线运行
PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。index保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
在线运行
当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。
要做到这一点,请在您第一次声明变量时使用static关键字:
在线运行
PHP echo 和 print 语句##
echo 和 print区别:
echo - 可以输出一个或多个字符串
print - 只允许输出一个字符串,返回值总为 1
提示:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。
PHP is fun 1!";
echo "Hello world!
";
echo "I'm about to learn PHP!
";
echo "This", " string", " was", " made", " with multiple parameters.";
echo "
";
echo '*******************************';
print "PHP is fun 2!
";
print "Hello world!
";
print "I'm about to learn PHP!";
//print "This", " string", " was", " made", " with multiple parameters."; 会出错
在线运行
";
print "Study PHP at $txt2";
print "My car is a {$cars[0]}";
在线运行
php数据类型##
- String(字符串),
- Integer(整型),
- Float(浮点型),
- Boolean(布尔型),
- Array(数组),
- Object(对象),
- NULL(空值)。
设置常量,使用 define() 函数,函数语法如下:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
创建一个区分大小写的常量##
常量在定义后,默认是全局变量
";
define("GREETING", "欢迎访问 baidu.com");
echo GREETING; // 输出 "欢迎访问 baidu.com"
echo '
';echo "greeting"; // 输出 "greeting"
echo "
不区分大小写
";
define("GREETING", "欢迎访问 baidu.com", true);
echo greeting; // 输出 "欢迎访问 baidu.com"
在线运行
PHP 并置运算符##
在 PHP 中,只有一个字符串运算符。
并置运算符** (.) **用于把两个字符串值连接起来。
在线运行
PHP strlen() 函数##
有时知道字符串值的长度是很有用的。
strlen() 函数返回字符串的长度(字符数)。
在线运行
PHP strpos() 函数##
strpos() 函数用于在字符串内查找一个字符或一段指定的文本。
如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。
在线运行
PHP运算符##
在 PHP 中,赋值运算符 = 用于给变量赋值。
在 PHP 中,算术运算符 + 用于把值加在一起。
+ ";
echo ($x + $y); // 输出16
echo "
- ";
echo ($x - $y); // 输出4
echo "
* ";
echo ($x * $y); // 输出60
echo "
/ ";
echo ($x / $y); // 输出1.6666666666667
echo "
% ";
echo ($x % $y); // 输出4
在线运行
PHP7+ 版本新增整除运算符intdiv(),###
在线运行
PHP 逻辑运算符
运算符 | 名称 | 描述 | 实例 |
---|---|---|---|
x and y | 与 | 如果 x 和 y 都为 true,则返回 true | x=6y=3(x < 10 and y > 1返回 true |
x or y | 或 | 如果 x 和 y 至少有一个为 true,则返回 true | x=6y=3(x==6 or y==5) 返回 true |
x xor y | 异或 | 如果 x 和 y 有且仅有一个为 true,则返回 true | x=6y=3(x==6 xor y==3) 返回 false |
x && y | 与 | 如果 x 和 y 都为 true,则返回 true | x=6y=3(x < 10 && y > 1) 返回 true |
x II y | 或 | 如果 x 和 y 至少有一个为 true,则返回 true | x=6y=3(x==5 II y==5) 返回 false |
! x | 非 | 如果 x 不为 true,则返回 true | x=6y=3!(x==y) 返回 true |
PHP 数组运算符##
运算符 | 名称 | 描述 |
---|---|---|
x + y | 集合 | x 和 y 的集合 |
x == y | 相等 | 如果 x 和 y 具有相同的键/值对,则返回 true |
x === y | 恒等 | 如果 x 和 y 具有相同的键/值对,且顺序相同类型相同,则返回 true |
x != y | 不相等 | 如果 x 不等于 y,则返回 true |
x <> y | 不相等 | 如果 x 不等于 y,则返回 true |
x !== y | 不恒等 | 如果 x 不等于 y,则返回 true |
"red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");
$z = $x + $y; // $x 和 $y 数组合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);
在线运行
三元运算符##
另一个条件运算符是"?:"(或三元)运算符 。
(expr1) ? (expr2) : (expr3)
对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。
在线运行
在 PHP7+ 版本多了一个 NULL 合并运算符,
if else##
- if 语句 - 在条件成立时执行代码
- if...else 语句 - 在条件成立时执行一块代码,条件不成立时执行另一块代码
- if...else if....else 语句 - 在若干条件之一成立时执行一个代码块
- switch 语句 - 在若干条件之一成立时执行一个代码块
switch##