您的位置:首页 > 编程语言 > PHP开发

干货系列!php课程精炼,零基础也能学会!

2017-03-22 22:10 337 查看
一. 定界符声明字符串(了解)
heredoc
1.定界符 heredoc就相当于双引号
2.定界符的开始要用双引号引起来
3.定界符的功能和双引号的功能完全一样,只不过在定界符中可以双引号
4.定界符的结尾必须顶行写
nowdoc
1.定界符 nowdoc相当于单引号
2.定界符的功能效果跟单引号是一样的,但是定界符中可以加单引号

二. 工具:
echo:输出变量,可以输出多个,中间使用逗号隔开

print:输出一个变量,  (不经常使用)
var_dump:输出变量的详细信息(可以输出任何一种数据类型)
print_r:可以输出变量,经常来输出数组
gettype: 获取变量的数据类型

三. 判断类型常用的功能函数:
is_array() 判断变量的数据类型是否为数组
is_bool()
is_float()
is_int()
is_null()
is_numeric 判断变量的数据类型是否为整数或者字符串整数
is_object()
is_resource()
is_scalar()scalar:标量
is_string()is_scalar

总结: 判断功能函数is_xxx();

四. 类型转换(一般是标量类型的转换)
强制转换: intval() floatval()  boolval() strval() 
[注]强制类型转换注意事项,详情见ppt,将里边的每一项进行整理,归纳.测试,.下午全部交
自动转换: (要自动转换的类型)变量;  (int) (float)
[注]自动类型转换细节,详情见ppt,将里边的每一项进行整理,归纳.测试,.下午全部交
设置类型转换:settype(变量,'转换的类型'):若成功返回TRUE,失败返回FALSE

五. 常量
概念: 在程序运行的人过程中,其值是不可以改变的量的就是常量
定义: define('常量名',常量值);
例子:  define('PI',3.14);
好处:
1.为了跟变量进行区分,
2.修改时,一处改,处处都改,
3.提高了开发效率
常量注意事项:
常量名一般使用大写字母来定义.
常量值只能为标量。
常量名可以小写,但是通常大写
常量名需要加上引号。
在字符串中调用常量的时候,必须在引号外面
   [总结] 变量或者常量需要跟字符串同时输出时,这是需要将变量或者常量写在字符串的外边,并且使用.连接
常量名建议只用字母和下划线
例子: DB_HOST   DB_USER DB_PASSWORD
常量全局都有效

六. 超全局变量
$GLOBALS
$_SERVER
$_GET
$_POST
$_REQUEST
$_ENV
$_FILES
$_COOKIE
$_SESSION
全部记住  结果都是数组

七. 可变变量
$zicheng = 'gengzicheng';

$gengzicheng = 'yanxuxia';

echo $$zicheng;//yanxuxia
echo '<br />';

echo $gengzicheng;//yanxuxia

将变量的值当做另外一个变量的名字

八. 变量引用
$a = '123';
$b = &$a;
$a = '345';
var_dump($a,$b);

九. 运算符和表达式 (表达式的结果只有两种要么为真要么为假)
算数运算符:  + - * / %(取余/求模) .
赋值运算符: += -= *= /= %= .=
例子:  $a += $b 其实就是$a = $a + $b
自加自减运算: ++ --
变量放置的前边:++$a/--$a    执行顺序:  先加1/减1,再赋值
变量放置的后边: $a++/$a--   执行顺序 :  先赋值,再加1/减1
关系运算符:  < > <= >= != == !== ===
$a < $b
=:  赋值
==: 判断值是否相等
!=  判断值是否不相等
===  判断值和值对应的类型都要相等
!==  判断值或者值对应的类型只要有一个不相等
逻辑运算符. && || and or xor  !
3<$a<100
$a>3 && $a<100
逻辑与 &&  and
表达式1      表达式2     表达式1&&表达式2
真         真          真
真         假          假
假 真

假 假

总结:一假全假,全真为真

逻辑或||  or
表达式1      表达式2     表达式1||表达式2
真         真          真
真         假          真
假 真

假 假

总结:一真为真,全假为假
逻辑非!
0 1
表达式      !表达式
真        假
假        真

异或xor
表达式1      表达式2     表达式1xor表达式2
真             真          假
真             假          真
假   真

假   假


总结:  相同为假,不同为真

题:  变量要么大于3,要么小于0
$a <0  || $a > 3
按位运算符:  &  |   ^   ~    <<   >>(了解)
1个0算一位或者1个1算一0位,    8位表示一个字节
0000 0000   0000 0010
0和1  0   1和0  0   1和1  1    0和0   0
按位与:
0000 0010        2
0000 1100  &     12
0000 0000
按位或:
0和1  1    1和0   1    1和1  1    0和0   0
0000 0010
0000 1100   |
0000 1110
按位取反
0000 0010
1111 1101   ~
按位异或  ^
0000 0010
0000 1100  ^
0000 1110
左移 <<
0000 0010  <<2
0000 1000
右移 >>
1111  1100   >>2
0011  1111

十. 短路概念 
只针对于逻辑与(&&)和逻辑或(||)
表达式1&&表达式2    表达式1||表达式2
逻辑与: 只要判断表达式1的结果为假,然后并且&&,这时就不在往后判断,直接输出假
逻辑或: 只要,判断表达式1的结果为真,然后并且||,这时就不在往后判断,直接输出真

十一. 三元运算符 (三目运算符) 指的是三个表达式
$a > $b  $a   $b
格式: 表达式1 ? 表达式2 : 
$a > $b ? $a : $b;
题: $a $b $c  那个值最大
($a > $b ? $a : $b) > $c ? ($a > $b ? $a : $b) : $c;

十二. 优先级问题
()

如果想先执行那个运算,就直接给该运算加()

下面的例子建议复制到编译器里学习!

例1:

/* 

1.定界符 heredoc就相当于双引号

2.定界符的开始要用双引号引起来

3.定界符的功能和双引号的功能完全一样,只不过在定界符中可以双引号

4.定界符的结尾必须顶行写

 */

/* $here = <<<"ABCD"

今天早上起得很早, 所以我就吃了两个"包子".

ABCD;

echo $here; */

/* 

1.定界符 nowdoc相当于单引号

2.定界符的功能效果跟单引号是一样的,但是定界符中可以加单引号

 */

$here = <<<'ABCD'

今天早上起得很早, 所以我就吃了两个'包子'.

ABCD;

echo $here;

例2

<?php

/* 

定界符:

 */

$a = 123;

$here = <<<ABCD

今天早上吃了一个"包子",感觉'$a'自己变胖了。

ABCD;

echo $here.'<br />';

$where = <<<"ABCD"

今天比较差的死难者,分机构.

ABCD;

echo $where;

$bb = <<<CBD

BCDKJOTRzncfkdxb'bnj' 内"$a"需缴费等下吧;

CBD;

echo $bb;

例3.

<?php

/* $name = 123; */

$name = true;//boolean布尔类型

$zicheng= gettype($name);

var_dump($zicheng);//integer整型

例4

<?php

$cars=array("Volvo","BMW","Toyota");

$arrlength=count($cars);

for($x=0;$x<$arrlength;$x++)

{

echo $cars[$x];

echo "<br>";

}

?>

例5

<?php

//强制转换

/* $num = 3.14;

$zicheng = intval($num);

var_dump($zicheng); */

//自动转换

/* $num = '123'; */

/* var_dump($num);

$zicheng = (int)$num;

var_dump($zicheng); */

//settype

/* $num = '123';

$zicheng = settype($num,'int');

var_dump($num);

var_dump($zicheng); */

/* $name = null;

$zicheng = (int)$name;

var_dump($zicheng); */

$num = 0;

if ($num) {
echo '这是整型';

}

例6

<?php

define('PI',3.141);

echo PI.'这是圆周率<br />';

/* 

__LINE__

__FILE__

__DIR__

PHP_OS

PHP_VERSION

 */

echo __LINE__;

echo '<br />';

echo __FILE__;

echo '<br />';

echo __DIR__;

echo '<br />';

echo PHP_OS ;

echo '<br />';

echo PHP_VERSION;

例7

<?php 

$name = 'wangpeng';

var_dump($GLOBALS);

例8

<?php

$zicheng = 'gengzicheng';

$gengzicheng = 'yanxuxia';

echo $$zicheng;

echo '<br />';

echo $gengzicheng;

例9

<?php

/* $a = '123';

$b = &$a;

$a = '345';

var_dump($a,$b); */

$a = 'hello';

$b = &$a;

$a = 'world';

例10

<?php

$num = 10%3;

var_dump($num);

例11

<?php

$a = 10;

$b = 11;

/* $c = $a += $b;  */

/* $c = $a + $b; */

/* $a = $a + $b; */

//简写

$a += $b;

var_dump($a);

例12

<?php

/* $a = 10;

$a++;//++值得就是给当前值+1

$a--;

var_dump($a); */

$a = 10;

++$a;

var_dump($a);

例13

<?php

/* $a = 99;

$b = 45;

if ($a !== $b) {
echo '条件成立';

} */

 

/* $a = 123;

$b = '345';

if ($a !== $b) {
echo '条件成立';

} */

//这是一个坑

$a = 123;

/* 

如果这样写条件永远成立

 */

/* if ($a = 345) {
echo '条件成立';

} */

if (123 == $a) {
echo '条件成立';

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  架构 语法基础 php cs