PHP学习笔记一
在点击打开链接上学习PHP笔记。
1、PHP框架
<?php //这是PHP程序代码 ?>
2、变量
(1)命名规则
变量以 $ 符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
变量名不能包含空格
变量名是区分大小写的($y 和 $Y 是两个不同的变量)
注意:PHP变量和语句都区分大小写。
(2)没有声明变量的语句,变量在第一次赋值时被创建。
<?php $txt="Hello world!"; $x=5; $y=10.5; ?>
(3)PHP是弱类型语言,PHP会根据变量的值,自动把变量转换为正确的数据类型。
(4)变量作用域(四种):local、global、static、parameter
local:局部变量,在PHP函数内部声明的,仅能在函数内部访问
global:全局变量,在所有函数外部定义的变量,拥有全局作用域;要在一个函数中访问一个全局变量,需要使用global关键字
<?php $x=5; // 全局变量 function myTest() { $y=10; // 局部变量 echo "<p>测试函数内变量:<p>"; echo "变量 x 为: $x"; echo "<br>"; echo "变量 y 为: $y"; } //仅能输出$y的值,不能输出x的值,因为它是全局变量没有函数中使用global关键字 myTest(); echo "<p>测试函数外变量:<p>"; echo "变量 x 为: $x"; echo "<br>"; echo "变量 y 为: $y"; //仅能输出$x,不能输出$y ?>
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; /*等同于: $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; */} myTest(); echo $y; // 输出 15 ?>
PHP将所有全局变量储存在一个名为$GLOBALS[index]的数组中,index保存变量名称;这个数组可以在函数内部访问,也可以直接用来更新全局变量。
static:当你希望某个函数的局部变量在函数完成时不要被删除,可以使用static关键字。但其仍是局部变量。
parameter:参数是通过代码调用给函数,作为函数的一部分声明。
<?php function myTest($x) { echo $x; } myTest(5); ?>
3、echo语句和print语句
两者均为输出语句。
echo可以输出一个或多个字符串,没有返回值,输出速度比print快;
print只允许输出一个字符串,返回值总为1。
<?php echo "<h2>PHP 很有趣!</h2>";//文字是标题格式 echo "Hello world!<br>"; echo "我要学 PHP!<br>"; echo "这是一个", "字符串,", "使用了", "多个", "参数。";//可以输出多个字符串 ?>
<?php print "<h2>PHP 很有趣!</h2>"; print "Hello world!<br>"; print "我要学习 PHP!";//只允许输出一个字符串 ?>
<?php $txt1="学习 PHP"; $txt2="RUNOOB.COM"; $cars=array("Volvo","BMW","Toyota"); /*使用print和echo都可以*/ print $txt1; print "<br>"; print "在 $txt2 学习 PHP "; print "<br>"; print "我车的品牌是 {$cars[0]}"; ?>
4、字符串的定义——PHP EOP
使用规则:
必须后接分号
EOF可以用任意其他字符代替,只需保证结束标志与开始标志一致
结束标志必须顶格独占一行,前后不能衔接任何空白和字符
开始标志可不带引号或带单双引号,不带引号和带双引号用于解释内嵌变量和转义符号,带单引号则不解释
当内容内嵌引号时,无需转义
<?php $name="runoob"; $a= <<<EOF "abc"$name "123" EOF; // 结束需要独立一行且前后不能空格 echo $a; ?>
注意,以<<<EOF开始标记开始,以EOF结束标记结束;位于开始和结束标记中的变量可以被正常解析,但函数不可以。
5、数据类型
String, Integer, Float, Boolean, Array, Object, NULL
(1)String字符串:放在单双引号都可以
(2)Integer整型:可以是整数或负数;三种格式——十进制、十六进制(0x)、八进制(0)
<?php $x = 5985; var_dump($x);//输出int(5985) echo "<br>"; //换行 $x = -345; // 负数 var_dump($x);//int(-345) echo "<br>"; $x = 0x8C; // 十六进制数 var_dump($x);//int(140) echo "<br>"; $x = 047; // 八进制数 var_dump($x);//int(39) ?>
var_dump() 函数返回变量的数据类型和值。
(3)Float浮点型:带小数,或指数形式(e表示10的几次方)
(4)Boolean布尔型
(5)Array数组
<?php $cars=array("Volvo","BMW","Toyota"); var_dump($cars); ?>
输出:array(3) { [0]=> string(5) "Volvo" [1]=> string(3) "BMW" [2]=> string(6) "Toyota"}
(6)Object对象:对象数据类型必须声明
首先用class关键字声明类对象(属性、方法),在类中定义数据类型,然后在实例化中使用数据类型
<?php class Car { var $color; function Car($color="green") { $this->color = $color;//this就是只想当前对象实例的指针,不指向任何其他对象或类 } function what_color() { return $this->color; } } ?>
(7)NULL空值:无值无类型
6、常量
设置常量常使用define() 函数,函数语法为:
bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )
其中,name为常量名称;value为常量的值;case_insensitive为可选,若为TRUE则大小写不敏感,默认为敏感。
常量默认为全局变量。
7、字符串操作
(1)并指运算符 . ——将两个字符串值连接在一起
<?php $txt1="Hello world!"; $txt2="What a nice day!"; echo $txt1 . " " . $txt2; ?>
(2)strlen() 函数:返回字符串长度(字符数)
(3)strpos() 函数:用于在字符川内查找一个字符或一段指定文本,找到返回第一个匹配字符位置,未找到返回FALSE
<?php echo strpos("Hello world!","world"); ?>
8、运算符
(1)
$x=10; $y=6; $a="hello";
$x/$y=1.6666666666667
var_dump(intp(10,3)); //输出int(3)
$a.=" world"; //$a="hello world"
==等于
===绝对等于,值和类型都相同
(2)数组运算
<?php $x = array("a" => "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); ?>
(3)三元运算符:(expr1) ? (expr2) : (expr3)
当expr2=expr1时, 可省略为(expr1) ? : (expr3) ,也可以表示(expr1) ? ?(expr3)
(4)优先级
<?php
// 优先级: && > = > and
// 优先级: || > = > or
$a = 3;
$b = false;
$c = $a or $b;
var_dump($c); // 这里的 $c 为 int 值3,而不是 boolean 值 true
$d = $a || $b;
var_dump($d); //这里的 $d 就是 boolean 值 true
?>
以上就是PHP学习笔记一的详细内容,更多请关注其它相关文章!