php输入语句怎么写

PHP开发工具包括:

PHP服务器组件。

PHP IDE(Integrated Development Environment,集成开发环境)。

MySql管理工具

文本编辑器

PHP服务器组件

PHP服务器组件非常多有WampServer、XAMPP、AppServ、phpStudy、phpnow等。

笔者推荐: WampServer,这也是目前window平台上使用最广泛的,操作也非常简单。WampServer内部还集成了PhpMyAdmin 数据库管理工具。还有phpStudy

WampServer 下载地址:http://www.wampserver.com/en/

phpStudy 下载地址:http://www.phpstudy.net/a.php/208.html

PHP IDE(Integrated Development Environment,集成开发环境)

PHP IDE 也是非常多有Zend Studio、Eclipse for PHP、EasyEclipse等。

笔者推荐:Zend Studio

MySql管理工具

MySql管理工具常用的有:Navicat for Mysql、PhpMyAdmin。

文本编辑器

如果你已经能够熟练掌握PHP的语法,那你可以逐渐抛弃那些笨重的IDE,使用文本编辑器来编写PHP代码。

常用的编辑器有:Sublime、PHPstorm、Notepad++、editplus等。

笔者推荐:Sublime、PHPstorm

PHP语法

PHP echo 和 print 语句

echo 和 print 区别:

? echo - 可以输出一个或多个字符串

? print - 只允许输出一个字符串,返回值总为 1

提示:echo 输出的速度比 print 快, echo 没有返回值,print有返回值1。

echo 是一个语言结构,使用的时候可以不用加括号,也可以加上括号: echo 或 echo()。

使用 echo 命令输出字符串(字符串可以包含 HTML 标签):

1

2

3

4

<!--?php

echo "<h2-->PHP is fun!";

echo "This", " string", " was", " made", " with multiple parameters.";

?>

使用 echo 命令输出变量和字符串:

1

2

3

4

5

6

7

8

9

10

<!--?php

$txt1="Learn PHP";

$txt2="w3cschool.cc";

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

echo $txt1;

echo "<br-->";

echo "Study PHP at $txt2";

echo "My car is a {$cars[0]}";

?>

print 同样是一个语言结构,可以使用括号,也可以不使用括号: print 或 print()。

使用 print 命令输出字符串(字符串可以包含 HTML 标签):

1

2

3

4

<!--?php

print "<h2-->PHP is fun!";

print "I'm about to learn PHP!";

?>

使用 print 命令输出变量和字符串:

1

2

3

4

5

6

7

8

9

10

<!--?php

$txt1="Learn PHP";

$txt2="w3cschool.cc";

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

print $txt1;

print "<br-->";

print "Study PHP at $txt2";

print "My car is a {$cars[0]}";

?>

echo出字符串的正确打开方式

一个字符串是用双引号括起来的一个词或一个句字,比如:“Hi,CSDN!”。你可以用PHP语言输出把这个字符串输出,像这样:

1

<!--?php echo "Hi,CSDN!";?-->

也可以用单引号括起来,就像下面代码:

1

<!--?php echo 'Hi,CSDN!';?-->

可以把两个字符用连接符连接起来,像这样:

1

<!--?php echo 'Hi,'.'CSDN!';?-->

注意:连接符可以连接多个字符串,上例就是把一个字符串拆分为二个小字符串,然后用一个连接符连起来。

在php中字符串连接符是用点(.)来表示的,这一点比较特殊。

变量

什么是变量

变量是用于存储值的,我们命令服务器去干活的时候,往往需要产生一些数据,需要临时性存放起来,方便取用。我们也可以理解为,变量就像一个购物袋,我们可以用来装苹果、榴莲(当然也可以用来装玫瑰),需要注意的是,一般情况下一个变量只能装一个(不要太贪心)值,除非是复合变量(后面变量类型时会介绍),当我们放进去一个苹果后,再放进榴莲的时候,苹果就被替换掉,再放入香蕉,那么榴莲就被替换了。

1

2

3

4

5

6

$var = "ABCD";

echo $var;

echo "

";

$var = "1234";

echo $var;

变量名的命名规则

变量名除了需要“$”进行标识外,还有一些规则需要遵守。就像拿到驾驶证以后,还得遵守交通规则。变量名的命名规则主要有三条:

1、变量名必须以字母或下划线 “_”开头,如”$_name”,”$name” ,”$name2”等,但是”$9name”是不对的。

2、变量名只能由字母、数字、以及“_”组成,还能包含汉字。如”$_qq”,”$qq308” ,”$my_apple”,“比如”$name我等”,但是”$name*”是不对的。

3、变量名不允许包含空格。当变量名由原由网多个单词组成,建议使用“_”进行分隔(比如 $my_apple),俗称下划线法,或者以大写字母开头比如 $myApple,俗称骆驼式命名法(也称驼峰命名法)。

特别需要注意的是,在PHP中变量名是区分大小写的,如“$my_book”与“$my_Book”代表两个不同的变量。

PHP 变量命名规则:

? 变量以 $ 符号开始,后面跟着变量的名称

? 变量名必须以字母或者下划线字符开始

? 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )

? 变量名不能包含空格

? 变量名是区分大小写的($y 和 $Y 是两个不同的变量)

PHP 语句和 PHP 变量都是区分大小写的。

1

2

3

4

5

6

7

8

9

10

11

12

13

<!--?php

$my_book = "我的小写的book";

$my_BOOK = "我的大写的BOOK";

echo $my_book;

echo "<br /-->";

echo $my_BOOK;

echo "

";

$my_book = "这次奇迹要发生啦";

echo $my_book;

echo "

";

?>

变量是用于存储信息的”容器”:

1

2

3

4

5

6

<!--?php

$x=5;

$y=6;

$z=$x+$y;

echo $z;

?-->

与代数类似

x=5

y=6

z=x+y

在代数中,我们使用字母(如 x),并给它赋值(如 5)。

从上面的表达式 z=x+y ,我们可以计算出 z 的值为 11。

变量是用于存储数据的容器。

PHP 是一门弱类型语言

在上面的实例中,我们注意到,不必向 PHP 声明该变量的数据类型。

PHP 会根据变量的值,自动把变量转换为正确的数据类型。

在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。

变量作用域

变量的作用域是脚本中变量可被引用/使用的部分。

PHP 有四种不同的变量作用域:

? local

? global

? static

? parameter

局部和全局作用域

在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。

在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:

1

2

3

4

5

6

<!--?php

$x=5; // 全局变量

function myTest()

{

$y=10; // 局部变量

echo "<p-->测试函数内变量:

"; echo "变量 x 为: $x"; echo "

"; echo "变量 y 为: $y"; } myTest(); echo "

测试函数外变量:

"; echo "变量 x 为: $x"; echo "

"; echo "变量 y 为: $y"; ?>

在以上实例中 myTest() 函数定义了 $x 和 $y 变量。 $x 变量在函数外声明,所以它是全局变量 , $y 变量在函数内声明所以它是局部变量。

当我们调用myTest()函数并输出两个变量的值, 函数将会输出局部变量 $y 的值,但是不能输出 $x 的值,因为 $x 变量在函数外定义,无法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用 global 关键字。

然后我们在myTest()函数外输出两个变量的值,函数将会输出全局部变量 $x 的值,但是不能输出 $y 的值,因为 $y 变量在函数中定义,属于局部变量。

你可以在不同函数中使用相同的变量名称,因为这些函数内定义的变量名是局部变量,只作用于该函数内。

global 关键字

global 关键字用于函数内访问全局变量。

在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字:

1

2

3

4

5

6

7

8

9

10

11

<!--?php

$x=5;

$y=10;

function myTest()

{

global $x,$y;

$y=$x+$y;

}

myTest();

echo $y; // 输出 15

?-->

PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。

上例也可以写成:

1

2

3

4

5

6

7

8

9

10

<!--?php

$x=5;

$y=10;

function myTest()

{

$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];

}

myTest();

echo $y;

?-->

Static 作用域

当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。

要做到这一点,请在您第一次声明变量时使用 static 关键字:

1

2

3

4

5

6

7

8

9

10

11

<!--?php

function myTest()

{

static$x=0;

echo $x;

$x++;

}

myTest();

myTest();

myTest();

?-->

然后,每次调用该函数时,该变量将会保留着函数前一次被调用时的值。

注释:该变量仍然是函数的局部变量。

参数作用域

参数是通过调用代码将值传递给函数的局部变量。

参数是在参数列表中声明的,作为函数声明的一部分:

1

2

3

4

5

6

7

<!--?php

function myTest($x)

{

echo $x;

}

myTest(5);

?-->

数据类型

String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)。

字符串

字符串型可以用三种方法定义:单引号形式、双引号形式和Heredoc结构形式。

可以将任何文本放在单引号和双引号中:

1

2

3

4

5

6

7

<!--?php

$x = "Hello world!";

echo $x;

echo "<br-->";

$x = 'Hello world!';

echo $x;

?>

字符串情况一

字符串中包含单(双)引号的时候,怎么办

第一种方案:在单引号中嵌入双引号;

第二种方案:在双引号中嵌入单引号;

第三种方案:使用转义符“\”(后面部分还有介绍);

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<!--?php

$str_string1 = '甲问:"你去看运动会了吗?"';

$str_string2 = "乙毫不犹豫地回答:'当然没去!'";

$str_string3 = '甲问:\'为什么?\'';

$str_string4 = "乙答道:\"太冷了不想出门\"";

echo $str_string1;

echo "<br /-->";

echo $str_string2;

echo "

";

echo $str_string3;

echo "

";

echo $str_string4;

echo "

";

?>

字符串情况二

引号遇到了美元怎么办?此处指用美元符号标识的变量。

当双引号中包含变量时,变量会与双引号中的内容连接在一起;

当单引号中包含变量时,变量会被当做字符串输出。

1

2

3

4

5

6

7

8

<!--?php

$love = "I love you!";

$string1 = "love,$story"; //双引号echo可以解析出变量

$string2 = 'love,$story'; //单引号echo不能解析出变量

echo $string1;

echo "<br /-->";

echo $string2;

?>

字符串情况三

字符串很长很长怎么办?

我们可以使用Heredoc结构形式的方法来解决该问题,首先使用定界符表示字符串(<<<),接着在“<<<“之后提供一个标识符GOD,然后是字符串,最后以提供的这个标识符结束字符串。

1

2

3

4

5

6

<!--?php

$string1 = <<<GOD

同学你好,我是你专业的辅导员,因为我没有你的QQ号,特地借了这位同学的QQ来发消息给你,希望引起你的重视!经本专业多名同学举报,在上课时间,你不好好学习、认真听讲,总是玩手机发说说,给其他同学的日常学习生活造成了极大的恶劣影响。

GOD;

echo $string1;

?-->

在赋值符号后,输入定界符“<<<”,接着是标识符,你可以用你的女神作为标识符“GOD”,如第2行,也可以使用你喜欢的狗狗,“DOG”作为标识符,但是,结尾处的标识符也必须是一样的。此外,在结尾的一行,一定要另起一行,并且此行除了“GOD”,并以“;”号结束之外,不能有任何其他字符,前后都不能有,包括空格,否则会出现错误。切记。

并置运算符

在 PHP 中,只有一个字符串运算符。

并置运算符 (.) 用于把两个字符串值连接起来。

将两个字符串变量连接在一起:

1

2

3

4

5

<!--?php

$txt1="Hello world!";

$txt2="What a nice day!";

echo $txt1 . " ". $txt2;

?-->

上面的代码将输出:Hello world! What a nice day!

提示:在上面的代码中,我们已经使用了两次并置运算符。这是由于我们需要在两个字符串之间插入一个空格。

strlen() 函数

有时知道字符串值的长度是很有用的。

strlen() 函数返回字符串的长度(字符数)。

下面的实例返回字符串 “Hello world!” 的长度:

1

2

3

<!--?php

echo strlen("Hello world!");

?-->

上面的代码将输出:12

提示:strlen() 常常用在循环和其他函数中,因为那时确定字符串何时结束是很重要的。(例如,在循环中,我们需要在字符串中的最后一个字符之后结束循环。)

strpos() 函数

strpos() 函数用于在字符串内查找一个字符或一段指定的文本。

如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回 FALSE。

下面的实例在字符串 “Hello world!” 中查找文本 “world”:

1

2

3

<!--?php

echo strpos("Hello world!","world");

?-->

上面的代码将输出:6

提示:在上面的实例中,字符串 “world” 的位置是 6。之所以是 6 而不是 7 的原因是,字符串中第一个字符的位置是 0,而不是 1。

整型

整数是一个没有小数的数字。

整数规则:

? 整数必须至少有一个数字 (0-9)

? 整数不能包含逗号或空格

? 整数是没有小数点的

? 整数可以是正数或负数

? 整型可以用三种格式来指定:十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)。

在以下实例中我们将测试不同的数字。 PHP var_dump() 函数返回变量的数据类型和值:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<!--?php

$x = 59xbLJW85;

var_dump($x);

echo "<br-->";

$x = -345; // 负数

var_dump($x);

echo "

";

$x = 0x8C; // 十六进制数

var_dump($x);

echo "

";

$x = 047; // 八进制数

var_dump($x);

?>

浮点型

浮点数是带小数部分的数字,或是指数形式。

在以下实例中我们将测试不同的数字。 PHP var_dump() 函数返回变量的数据类型和值:

1

2

3

4

5

6

7

8

9

10

11

<!--?php

$x = 10.365;

var_dump($x);

echo "<br-->";

$x = 2.4e3;

var_dump($x);

echo "

";

$x = 8E-5;

var_dump($x);

?>

布尔型

布尔型只有两个值,一个是TRUE,另一个FALSE。它不区分大小写,”TRUE”和“true”效果是一样的。主要用在条件结构(条件结构在后面部分会介绍)中,例如判断是否满足条件的时候,是用“true”表示满足,用“false”表示不满足。

需要注意的是,当我们用”echo”指令输出布尔类型时,如果是“true”则输出的是“1”,“false”则什么也不输出。我们可以使用“var_dump”函数,获取它真正的数据类型。

1

2

$x=true;

$y=false;

1

2

3

4

5

6

7

<!--?php

$sex = "男";

$flag = $sex == "男"; //判断该变量是否等于“男”,并将比较的结果赋值给变量“$flag”

echo $flag;

echo "<br /-->";

var_dump($flag);

?>

数组

数组可以在一个变量中存储多个值。

在以下实例中创建了一个数组, 然后使用 PHP var_dump() 函数返回数组的数据类型和值:

1

2

3

4

<!--?php

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

var_dump($cars);

?-->

在接下来的章节中你将学到更多关于数组的知识

对象

对象数据类型也可以用于存储数据。

在 PHP 中,对象必须声明。

首先,你必须使用class关键字声明类对象。类是可以包含属性和方法的结构。

然后我们在类中定义数据类型,然后在实例化的类中使用数据类型:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<!--?php

classCar

{

var $color;

function Car($color="green")

{

$this--->color = $color;

}

function what_color()

{

return$this->color;

}

}

?>

PHP关键字this就是指向当前对象实例的指针,不指向任何其他对象或类。

NULL 值

NULL是空类型,对大小写不敏感,NULL类型只有一个取值,表示一个变量没有值,当被赋值为NULL,或者尚未被赋值,或者被unset(),这三种情况下变量被认为为NULL。

1

2

3

4

5

<!--?php

$x="Hello world!";

$x=null;

var_dump($x);

?-->

1

2

3

4

5

6

7

8

9

10

11

12

<!--?php

error_reporting(0); //禁止显示PHP警告提示

$var;

var_dump($var);

$var1 = null;

var_dump($var1);

$var2 = NULL;

var_dump( $var2);

$var3 = "节日快乐!";

unset ($var3) ; //释放$var3

var_dump($var3);

?-->

特殊类型—资源

资源(resource):资源是由专门的函数来建立和使用的,例如打开文件、数据连接、图形画布。我们可以对资源进行操作(创建、使用和释放)。任何资源,在不需要的时候应该被及时释放。如果我们忘记了释放资源,系统自动启用垃圾回收机制,在页面执行完毕后回收资源,以避免内存被消耗殆尽。

1

2

3

4

5

<!--?php

$file=fopen("f.txt","r"); //打开文件

$con=mysql_connect("localhost","root","root"); //连接数据库

$img=imagecreate(100,100);//图形画布

?-->

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<!--?php

//首先采用“fopen”函数打开文件,得到返回值的就是资源类型。

$file_handle = fopen("good.txt","r");

if($file_handle)

{

//接着采用while循环(后面语言结构语句中的循环结构会详细介绍)一行行地读取文件,然后输出每行的文字

while(!feof($file_handle))

{ //判断是否到最后一行

$line = fgets($file_handle); //读取一行文本

echo $line; //输出一行文本

echo "<br /-->"; //换行

}

}

fclose($file_handle);//关闭文件

?>

常量

PHP 常量

常量是一个简单值的标识符。该值在脚本中不能改变。

一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。 (常量名不需要加 $ 修饰符)。

注意: 常量在整个脚本中都可以使用。

设置常量

使用 define() 函数:

bool define ( string name,mixedvalue [, bool $case_insensitive = false ] )

该函数有三个参数:

? name:必选参数,常量名称,即标志符。

? value:必选参数,常量的值。

? case_insensitive :可选参数,如果设置为 TRUE,该常量则大小写不敏感。默认大小写敏感。

(注: string表示参数类型为字符串类型,mixed表示参数类型可以接受为多种不同的类型,case_sensitive = true表示默认为布尔类型TRUE)

创建一个 区分大小写的常量, 常量值为 “欢迎访问 blog.csdn.net”:

1

2

3

4

5

6

7

<!--?php

// 区分大小写的常量名

define("GREETING", "欢迎访问 blog.csdn.net");

echo GREETING; // 输出 "欢迎访问 blog.csdn.net"

echo '<br-->';

echo greeting; // 输出 "greeting"

?>

创建一个 不区分大小写的常量, 常量值为 “欢迎访问 blog.csdn.net”:

1

2

3

4

5

<!--?php

// 不区分大小写的常量名

define("GREETING", "欢迎访问 blog.csdn.net", true);

echo greeting; // 输出 "欢迎访问 blog.csdn.net"

?-->

常量是全局的

在函数内可以使用常量,即便常量定义在函数外也可以正常使用常量。

1

2

3

4

5

6

7

8

<!--?php

define("GREETING", "欢迎访问 blog.csdn.net");

function myTest()

{

echo GREETING;

}

myTest(); // 输出 "欢迎访问 blog.csdn.net"

?-->

认识一下系统常量

系统常量是PHP已经定义好的常量,可以直接拿来使用,常见的系统常量有:

(1)__FILE__ :php程序文件名。它可以帮助我们获取当前文件在服务器的物理位置。

(2)__LINE__ :PHP程序文件行数。它可以告诉我们,当前代码在第几行。

(3)PHP_VERSION:当前解析器的版本号。它可以告诉我们当前PHP解析器的版本号,我们可以提前知道我们的PHP代码是否可被该PHP解析器解析。

(4)PHP_OS:执行当前PHP版本的操作系统名称。它可以告诉我们服务器所用的操作系统名称,我们可以根据该操作系统优化我们的代码。

运算符

PHP 算术运算符

php输入语句怎么写

1

2

3

4

5

6

7

8

9

<!--?php

$x=10;

$y=6;

echo ($x + $y); // 输出16

echo ($x - $y); // 输出4

echo ($x * $y); // 输出60

echo ($x / $y); // 输出1.6666666666667

echo ($x % $y); // 输出4

?-->

PHP7+ 版本新增整除运算符 intdiv(),使用:

1

2

3

<!--?php

var_dump(intdiv(10, 3)); // 输出int(3)

?-->

取模算术符有什么作用呢?

假设我们要在一个考场安排了一场考试,对考生从1开始,都进行了编号,那么怎么让服务器帮助我们计算考生在的位置呢,进而打印考场的考生对照表呢?

1

2

3

4

5

6

7

8

9

10

<!--?php

$maxLine = 4; //每排人数

$no = 17;//学生编号

$line = ceil($no/$maxLine);

$row = $no%$maxLine?$no%$maxLine:$maxLine;

echo "编号<b-->".$no."的座位在第<b>".$line."</b>排第<b>".$row."</b>个位置";

//输出:编号17的座位在第5排第1个位置

?>

PHP 赋值运算符

php输入语句怎么写

使用不同赋值运算符得到的不同结果:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<!--?php

$x=10;

echo $x; // 输出10

$y=20;

$y += 100;

echo $y; // 输出120

$z=50;

$z -= 25;

echo $z; // 输出25

$i=5;

$i *= 6;

echo $i; // 输出30

$j=10;

$j /= 5;

echo $j; // 输出2

$k=15;

$k %= 4;

echo $k; // 输出3

?-->

使用不同字符串运算符得到的不同结果:

1

2

3

4

5

6

7

8

9

<!--?php

$a = "Hello";

$b = $a . " world!";

echo $b; // 输出Hello world!

$x="Hello";

$x .= " world!";

echo $x; // 输出Hello world!

?-->

PHP 递增/递减运算符

php输入语句怎么写

使用递增/递减运算符得到的结果:

1

2

3

4

5

6

7

8

9

10

11

12

13

<!--?php

$x=10;

echo ++$x; // 输出11

$y=10;

echo $y++; // 输出10

$z=5;

echo --$z; // 输出4

$i=5;

echo $i--; // 输出5

?-->

PHP 比较运算符

php输入语句怎么写

使用一些比较运算符得到的不同结果:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<!--?php

$x=100;

$y="100";

var_dump($x == $y);

echo "<br-->";

var_dump($x === $y);

echo "

";

var_dump($x != $y);

echo "

";

var_dump($x !== $y);

echo "

";

$a=50;

$b=90;

var_dump($a > $b);

echo "

";

var_dump($a < $b);

?>

PHP 逻辑运算符

php输入语句怎么写

PHP 数组运算符

php输入语句怎么写

使用一些数组运算符得到的不同结果:

1

2

3

4

5

6

7

8

9

10

11

<!--?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);

?>

三元运算符

另一个条件运算符是”?:”(或三元)运算符 。

语法格式

(expr1) ? (expr2) : (expr3)

对 expr1 求值为 TRUE 时的值为 expr2,在 expr1 求值为 FALSE 时的值为 expr3。

自 PHP 5.3 起,可以省略三元运算符中间那部分。表达式 expr1 ?: expr3 在 expr1 求值为 TRUE 时返回 expr1,否则返回 expr3。

1

2

3

4

5

6

7

8

9

10

<!--?php

$test = 'CSDN'; 原由网// 通过判断 $_GET 请求中含有 user 值,如果有返回 $_GET['user'],否则返回 nobody

// 普通写法

$username = isset($test) ? $test : 'nobody';

echo $username, PHP_EOL;

// PHP 5.3+ 版本写法

$username = $test ?: 'nobody';

echo $username, PHP_EOL;

?-->

注意:PHP_EOL 是一个换行符,兼容更大平台。

在 PHP7+ 版本多了一个 NULL 合并运算符,实例如下:

1

2

3

4

5

6

<!--?php

// 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值

$username = $_GET['user'] ?? 'nobody';

// 类似的三元运算符

$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';

?-->

组合比较符(PHP7+)

PHP7+ 支持组合比较符:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<!--?php

// 整型

echo 1<=--> 1; // 0

echo 1<=> 2; // -1

echo 2<=> 1; // 1

// 浮点型

echo 1.5<=> 1.5; // 0

echo 1.5<=> 2.5; // -1

echo 2.5<=> 1.5; // 1

// 字符串

echo "a"<=> "a"; // 0

echo "a"<=> "b"; // -1

echo "b"<=> "a"; // 1

?>

PHP 错误控制运算符

PHP中提供了一个错误控制运算符“@”,对于一些可能会在运行过程中出错的表达式时,我们不希望出错的时候给客户显示错误信息,这样对用户不友好。于是,可以将@放置在一个PHP表达式之前,该表达式可能产生的任何错误信息都被忽略掉;

如果激活了track_error(这个玩意在php.ini中设置)特性,表达式所产生的任何错误信息都被存放在变量$php_errormsg中,此变量在每次出错时都会被覆盖,所以如果想用它的话必须尽早检查。

需要注意的是:错误控制前缀“@”不会屏蔽解析错误的信息,不能把它放在函数或类的定义之前,也不能用于条件结构例如if和foreach等。

1

2

3

4

5

6

<!--?php

$conn = @mysql_connect("localhost","username","password");

echo "出错了,错误原因是:".$php_errormsg;

/*输出:出错了,错误原因是:mysql_connect() [function.mysql-connect]: Access denied for user 'username'@'localhost' (using password: YES)*/

?-->

语言结构语句

PHP 条件结构之If…Else

PHP 条件语句

编写代码时,常常需要为不同的判断执行不同的动作。

在 PHP 中,提供了下列条件语句:

? if 语句 - 在条件成立时执行代码

? if…else 语句 - 在条件成立时执行一块代码,条件不成立时执行另一块代码

? if…else if….else 语句 - 在若干条件之一成立时执行一个代码块

? switch 语句 - 在若干条件之一成立时执行一个代码块

PHP 条件结构之switch…case…

工作原理:首先对一个简单的表达式 n(通常是变量)进行一次计算。将表达式的值与结构中每个 case 的值进行比较。如果存在匹配,则执行与 case 关联的代码。代码执行后,使用 break 来阻止代码跳入下一个 case 中继续执行。default 语句用于不存在匹配(即没有 case 为真)时执行。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<!--?php

$favcolor="red";

switch($favcolor)

{

case"red":

echo "你喜欢的颜色是红色!";

break;

case"blue":

echo "你喜欢的颜色是蓝色!";

break;

case"green":

echo "你喜欢的颜色是绿色!";

break;

default:

echo "你喜欢的颜色不是 红, 蓝, 或绿色!";

}

?-->

在 PHP 中,提供了下列循环语句:

? while - 只要指定的条件成立,则循环执行代码块

? do…while - 首先执行一次代码块,然后在指定的条件成立时重复这个循环

? for - 循环执行代码块指定的次数

? foreach - 根据数组中每个元素来循环代码块

PHP 循环结构之while

while 循环将重复执行代码块,直到指定的条件不成立。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<!--?php

$i=1; //首先设置变量 i 的值为 1

while($i<=5) //只要 i 小于或者等于 5,while 循环将继续运行。循环每运行一次,i 就会递增 1

{

echo "The number is ". $i . "<br-->";

$i++;

}

//输出:

//The number is 1

//The number is 2

//The number is 3

//The number is 4

//The number is 5

?>

PHP 循环结构之do…while

do…while 语句会至少执行一次代码,然后检查条件,只要条件成立,就会重复进行循环。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<!--?php

$i=1; //首先设置变量 i 的值为 1

do//将变量 i 的值递增 1,然后输出。先检查条件(i 小于或者等于 5),只要 i 小于或者等于 5,循环将继续

{

$i++;

echo "The number is ". $i . "<br-->";

}

while($i<=5);

//输出:

//The number is 2

//The number is 3

//The number is 4

//The number is 5

//The number is 6

?>

PHP 循环结构之do…while的运用优势举例

while和do…while可以根据具体情况选用。

假设有一种棋类游戏,首先掷骰子,若不为6,前进骰子的点数的步长;若为6,前进骰子的点数的步长,并可以再掷一次。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

<!--?php

//while例子

$sum = 0;

$num = rand(1,6); //获取1至6的随机数,模拟掷骰子

$sum = $sum + $num;//前进步长

while($num==6)

{

$num = rand(1,6);//获取1至6的随机数,模拟掷骰子

$sum = $sum + $num;//前进步长

};

echo "while例子执行完毕,前进:".$sum ."<br /-->";

//do...while例子

$sum = 0;

do

{

$num = rand(1,6);//获取1至6的随机数,模拟掷骰子

$sum = $sum + $num;//前进步长

}

while($num==6);

echo "do...while例子执行完毕,前进:".$sum ."

";

//输出:

//while例子执行完毕,前进:16

//do...while例子执行完毕,前进:15

?>

PHP 循环结构之for

for 循环用于您预先知道脚本需要运行的次数的情况。

初始值和增量参数可为空,或者有多个表达式(用逗号分隔)。

1

2

3

4

5

6

<!--?php

for($i=1; $i<=5; $i++) //只要变量 i 小于或者等于 5,循环将继续运行。循环每运行一次,变量 i 就会递增 1

{

echo "The number is ". $i . "<br-->";

}

?>

输出:

The number is 1

The numbwww.58yuanyou.comer is 2

The number is 3

The number is 4

The number is 5

PHP 循环结构之foreach

foreach 循环用于遍历数组。

foreach ($array as $value)

{

要执行代码;

}

每进行一次循环,当前数组元素的值就会被赋值给 $value 变量(数组指针会逐一地移动),在进行下一次循环时,您将看到数组中的下一个值。

1

2

3

4

5

6

7

<!--?php

$x=array("one","two","three");

foreach ($x as $value) //输出给定数组的值的循环

{

echo $value . "<br-->";

}

?>

输出:

one

two

three

PHP中foreach循环语句一般有两种使用方式:不取下标、取下标。

(1)只取值,不取下标

1

2

3

4

5

<!--?php

foreach (数组 as 值){

//执行的任务

}

?-->

(2)同时取下标和值

1

2

3

4

5

<!--?php

foreach (数组 as 下标 =--> 值){

//执行的任务

}

?>

列出所有学生姓名!有一组以学号为下标,姓名为值的数组,这时候需要遍历数组的姓名。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

<!--?php

$students = array(

'2010'=-->'令狐冲',

'2011'=>'林平之',

'2012'=>'曲洋',

'2013'=>'任盈盈',

'2014'=>'向问天',

'2015'=>'任我行',

'2016'=>'冲虚',

'2017'=>'方正',原由网

'2018'=>'岳不群',

'2019'=>'宁中则',

);//10个学生的学号和姓名,用数组存储

//使用循环结构遍历数组,获取学号和姓名

foreach($students as $v)

{

echo $v;//输出(打印)姓名

echo "

";

}

?>

输出:

令狐冲

林平之

曲洋

任盈盈

向问天

任我行

冲虚

方正

岳不群

宁中则

列出所有学生学号和姓名!有时候需要同时列出学号和姓名。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

<!--?php

$students = array(

'2010'=-->'令狐冲',

'2011'=>'林平之',

'2012'=>'曲洋',

'2013'=>'任盈盈',

'2014'=>'向问天',

'2015'=>'任我行',

'2016'=>'冲虚',

'2017'=>'方正',

'2018'=>'岳不群',

'2019'=>'宁中则',

);//10个学生的学号和姓名,用数组存储

//使用循环结构遍历数组,获取学号和姓名

foreach($students as $key =>$v)

{

echo $key.":".$v;//输出(打印)学号:姓名

echo "

";

}

?>

输出:

2010:令狐冲

2011:林平之

2012:曲洋

2013:任盈盈

2014:向问天

2015:任我行

2016:冲虚

2017:方正

2018:岳不群

2019:宁中则

PHP 结构嵌套之条件嵌套

条件结构嵌套就像回家的路上会遇到多个十字路口。

假设在发3月工资的时候,不仅判定性别,还要判定男性是否有房,没有房,可以发放住房补贴,对于女性,判定是否怀孕,怀孕还有怀孕补贴。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

<!--?php

$totalMoney = 0;//总工资

$basicMoney = 300;//基本工资

$sex = "男";

$noHouse = TRUE; //是否有房

$houseMoney = 150;//住房补贴

$isPregnancy = TRUE; //是否怀孕

$pregnancyMoney = 100;//怀孕补贴

if($sex == "男")

{

$totalMoney = $basicMoney + 0;// 男的没奖金

if($noHouse)

{

$totalMoney = $totalMoney + $houseMoney;

}

}

elseif($sex == "女")

{

$totalMoney = $basicMoney + 300;// 女的有奖金300元

if($isPregnancy)

{

$totalMoney = $totalMoney + $pregnancyMoney;

}

}

echo $totalMoney;

?-->

输出:

450

PHP 结构嵌套之循环嵌套

循环结构嵌套,就是类似于跑多个足球场,例如假设有两个足球场,一个大足球场,一个小足球场,在大足球场跑一圈后,再到小足球场跑几圈,跑完几圈后,再到大足球场中继续跑。在遍历二维数组中很常用。

通过二维数组,保存了学号、姓名和成绩,可以通过两个循环嵌套,遍历出学号和姓名。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

<!--?php

$students = array(

'2010'=-->array('令狐冲',"59"),

'2011'=>array('林平之',"44"),

'2012'=>array('曲洋',"89"),

'2013'=>array('任盈盈',"92"),

'2014'=>array('向问天',"93"),

'2015'=>array('任我行',"87"),

'2016'=>array('冲虚',"58"),

'2017'=>array('方正',"74"),

'2018'=>array('岳不群',"91"),

'2019'=>array('宁中则',"90"),

);//10个学生的学号、姓名、分数,用数组存储

foreach($students as $key=>$val)

{ //使用循环结构遍历数组,获取学号

echo $key; //输出学号

echo ":";

//循环输出姓名和分数

foreach($val as $v)

{

echo $v;

}

echo "

";

}

?>

输出:

2010:令狐冲59

2011:林平之44

2012:曲洋89

2013:任盈盈92

2014:向问天93

2015:任我行87

2016:冲虚58

2017:方正74

2018:岳不群91

2019:宁中则90

PHP 结构嵌套之循环结构与条件结构嵌套

有时候在执行任务时,对于一些特殊的任务还需要进行额外处理,这个时候就会将循环结构与条件结构嵌套使用。

有个学生数组存储了学号和姓名,我们需要查找学号为“2014”的学生姓名,这时候我们就需要遍历该数组,并判定学号是否为“2014”。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

<!--?php

$students = array(

'2010'=-->'令狐冲',

'2011'=>'林平之',

'2012'=>'曲洋',

'2013'=>'任盈盈',

'2014'=>'向问天',

'2015'=>'任我行',

'2016'=>'冲虚',

'2017'=>'方正',

'2018'=>'岳不群',

'2019'=>'宁中则',

);//10个学生的学号和姓名,用数组存储

$query = '2014';

//使用循环结构遍历数组,获取学号和姓名

foreach($students as $key =>$v)

{

//使用条件结构,判断是否为该学号

if($key == $query)

{

echo $v;//输出(打印)姓名

break;//结束循环(跳出循环)

}

}

?>

输出:

向问天

内容版权声明:除非注明原创否则皆为转载,再次转载请注明出处。

文章标题: php输入语句怎么写

文章地址: www.58yuanyou.com/jiqiao/48994.html

相关推荐