<?php /* * Created on 2015年12月17日 * * To change the template for this generated file go to * Window - Preferences - PHPeclipse - PHP - Code Templates */ #--------------打印-------echo - 能够输出一个以上的字符串,print - 只能输出一个字符串,并始终返回 1--------------- echo "我的第一段 PHP 脚本!"; print "I‘m studying php now.‘"; #--------------打印---------------------- #--------------注释---------------------- // 这是单行注释 # 这也是单行注释 /* 这是多行注释块 它横跨了 多行 */ #--------------注释---------------------- # -------------if、else、echo 等等都对大小写不敏感--------- ECHO "Hello World!<br>"; echo "Hello World!<br>"; EcHo "Hello World!<br>"; # -------------if、else、echo 等等都对大小写不敏感--------- #--------------------常量:常量是单个值的标识符(名称)。在脚本中无法改变该值。-------------------------- #创建了一个对大小写敏感的常量,值为 "Welcome to W3School.com.cn!": define("GREETING", "Welcome to W3School.com.cn!"); echo GREETING; #创建了一个对大小写不敏感的常量,值为 "Welcome to W3School.com.cn!": define("GREETING", "Welcome to W3School.com.cn!", true); echo greeting; #--------------------常量-------------------------- #---------------------变量-------------------------- $x=5; $y=6; $z=$x+$y; echo $z; #---------------------变量-------------------------- #--------------------所有变量都对大小写敏感--------------- $color = "red"; echo "My car is " . $color . "<br>"; echo "My house is " . $COLOR . "<br>"; echo "My boat is " . $coLOR . "<br>"; #--------------------所有变量都对大小写敏感--------------- #-----------------------------------------变量的作用域--------------------------------------- $x=5; // 全局作用域 function myTest() { $y=10; // 局部作用域 echo "<p>测试函数内部的变量:</p>"; echo "变量 x 是:$x"; echo "<br>"; echo "变量 y 是:$x"; } myTest(); echo "<p>测试函数之外的变量:</p>"; echo "变量 x 是:$x"; echo "<br>"; echo "变量 y 是:$x"; #-----------------------------------------变量的作用域--------------------------------------- #-----------------------------------------local(局部)global(全局)static(静态)--------------------- #-----------------------------------------global----------------- $x=5; $y=10; function myTest() { $GLOBALS[‘y‘]=$GLOBALS[‘x‘]+$GLOBALS[‘y‘]; } myTest(); echo $y; // 输出 15 #-----------------------------------------static------------------ function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); #-----------------------------------------local(局部)global(全局)static(静态)--------------------- #-----------------------------------------数据类型:字符串、整数、浮点数、逻辑、数组、对象、NULL--------------------- #-------------------字符串是字符序列,比如 "Hello world!" $x = "Hello world!"; echo $x; echo "<br>"; $x = ‘Hello world!‘; echo $x; #-------------------整数是没有小数的数字, var_dump() 会返回变量的数据类型和值 $x = 5985; var_dump($x); echo "<br>"; $x = -345; // 负数 var_dump($x); echo "<br>"; $x = 0x8C; // 十六进制数 var_dump($x); echo "<br>"; $x = 047; // 八进制数 var_dump($x); #-------------------浮点数是有小数点或指数形式的数字, var_dump() 会返回变量的数据类型和值 $x = 10.365; var_dump($x); echo "<br>"; $x = 2.4e3; var_dump($x); echo "<br>"; $x = 8E-5; var_dump($x); #------------------逻辑是 true 或 false $x=true; $y=false; #------------------数组在一个变量中存储多个值, var_dump() 会返回变量的数据类型和值 $cars=array("Volvo","BMW","SAAB"); var_dump($cars); #------------------对象是存储数据和有关如何处理数据的信息的数据类型,首先我们必须声明对象的类。对此,我们使用 class 关键词。类是包含属性和方法的结构。 class Car { var $color; function Car($color="green") { $this->color = $color; } function what_color() { return $this->color; } } #------------------特殊的 NULL 值表示变量无值。NULL 是数据类型 NULL 唯一可能的值。 $x="Hello world!"; $x=null; var_dump($x); #-----------------------------------------数据类型:字符串、整数、浮点数、逻辑、数组、对象、NULL--------------------- #-----------------------------------------字符串函数------------------------------------------------ #--------------------------strlen() 函数:返回字符串的长度,以字符计 echo strlen("Hello world!");//输出是:12 #--------------------------strpos() 函数:用于检索字符串内指定的字符或文本 echo strpos("Hello world!","world");//例中字符串 "world" 的位置是 6。是 6(而不是 7)的理由是,字符串中首字符的位置是 0 而不是 1。 #-----------------------------------------字符串函数------------------------------------------------ #---------------------------------------- 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 $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 #---------------------------------------- PHP 脚本中的各种运算符:+、-、*、/、%--------------------------------- #----------------------------------------if...else...elseif 语句--------------------------------------- #if 语句 - 如果指定条件为真,则执行代码 #if...else 语句 - 如果条件为 true,则执行代码;如果条件为 false,则执行另一端代码 #if...elseif....else 语句 - 选择若干段代码块之一来执行 #switch 语句 - 语句多个代码块之一来执行 #------------------------------------if------------------- $t=date("H"); if ($t<"20") { echo "Have a good day!"; } #------------------------------------if else-------------- $t=date("H"); if ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } #------------------------------------ if....elseif...else--- $t=date("H"); if ($t<"10") { echo "Have a good morning!"; } elseif ($t<"20") { echo "Have a good day!"; } else { echo "Have a good night!"; } #----------------------------------------if...else...elseif 语句--------------------------------------- #--------------------------------------------switch:有选择地执行若干代码块之一--------------------------------- #工作原理: # 对表达式(通常是变量)进行一次计算 # 把表达式的值与结构中 case 的值进行比较 # 如果存在匹配,则执行与 case 关联的代码 # 代码执行后,break 语句阻止代码跳入下一个 case 中继续执行 # 如果没有 case 为真,则使用 default 语句 switch ($x) { case 1: echo "Number 1"; break; case 2: echo "Number 2"; break; case 3: echo "Number 3"; break; default: echo "No number between 1 and 3"; } #--------------------------------------------switch-------------------------------------------------- #--------------------------------------------while---------------------------------------------------- #在 PHP 中,我们有以下循环语句: #while - 只要指定条件为真,则循环代码块 #do...while - 先执行一次代码块,然后只要指定条件为真则重复循环 #for - 循环代码块指定次数 #foreach - 遍历数组中的每个元素并循环代码块 #------------------------------------while------------- $x=1; while($x<=5) { echo "这个数字是:$x <br>"; $x++; } #-----------------------------------do while------------ $x=1; do { echo "这个数字是:$x <br>"; $x++; } while ($x<=5); #--------------------------------------------while---------------------------------------------------- #---------------------------------------------for ------------------------------------------------------ #---------------------for------------ for ($x=0; $x<=10; $x++) { echo "数字是:$x <br>"; } #-------------------foreach---------每进行一次循环迭代,当前数组元素的值就会被赋值给 $value 变量,并且数组指针会逐一地移动,直到到达最后一个数组元素 $colors = array("red","green","blue","yellow"); foreach ($colors as $value) { echo "$value <br>"; } #---------------------------------------------for ------------------------------------------------------ #-------------------------------------------函数(function(){})---------------------------------------------- #-------------------------------无参函数--------- function writeMsg() { echo "Hello world!"; } writeMsg(); // 调用函数 #-------------------------------有参函数--------- function familyName($fname) { echo "$fname Zhang.<br>"; } familyName("Li"); familyName("Hong"); familyName("Tao"); familyName("Xiao Mei"); familyName("Jian"); #-------------------------------默认参数值-------- function setHeight($minheight=50) { echo "The height is : $minheight <br>"; } setHeight(350); setHeight(); // 将使用默认值 50 setHeight(135); setHeight(80); #-------------------------------函数 - 返回值------- function sum($x,$y) { $z=$x+$y; return $z; } echo "5 + 10 = " . sum(5,10) . "<br>"; echo "7 + 13 = " . sum(7,13) . "<br>"; echo "2 + 4 = " . sum(2,4); #-------------------------------------------函数(function(){})---------------------------------------------- #-------------------------------------------数组(array)---------------------------------------------------- #在 PHP 中,有三种数组类型: # 索引数组 - 带有数字索引的数组 # 关联数组 - 带有指定键的数组 # 多维数组 - 包含一个或多个数组的数组 #--------------------索引数组----------------- $cars=array("Volvo","BMW","SAAB"); $cars[0]="Volvo"; $cars[1]="BMW"; $cars[2]="SAAB"; #-------------------关联数组------------------ $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); $age[‘Peter‘]="35"; $age[‘Ben‘]="37"; $age[‘Joe‘]="43"; $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); echo "Peter is " . $age[‘Peter‘] . " years old."; #-------------------获得数组的长度 - count() 函数---------------------- $cars=array("Volvo","BMW","SAAB"); echo count($cars); #----------------------遍历索引数组--------------------------------- $cars=array("Volvo","BMW","SAAB"); $arrlength=count($cars); for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>"; } #-----------------------遍历关联数组--------------------------------- $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); foreach($age as $x=>$x_value) { echo "Key=" . $x . ", Value=" . $x_value; echo "<br>"; } #-------------------------------------------数组(array)---------------------------------------------------- #------------------------------------------------数组排序--------------------------------------------------- #------------------------------------------------数组排序--------------------------------------------------- #PHP 数组排序函数: #sort() - 以升序对数组排序 #rsort() - 以降序对数组排序 #asort() - 根据值,以升序对关联数组进行排序 #ksort() - 根据键,以升序对关联数组进行排序 #arsort() - 根据值,以降序对关联数组进行排序 #krsort() - 根据键,以降序对关联数组进行排序 #---------------------------------------对数组进行升序排序 - sort()--------- $cars=array("Volvo","BMW","SAAB"); sort($cars); $numbers=array(3,5,1,22,11); sort($numbers); #---------------------------------------对数组进行降序排序 - rsort()-------- $cars=array("Volvo","BMW","SAAB"); rsort($cars); $numbers=array(3,5,1,22,11); rsort($numbers); #---------------------------------------根据值对数组进行升序排序 - asort()----- $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); asort($age); #--------------------------------------根据键对数组进行升序排序 - ksort()------ $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); ksort($age); #--------------------------------------根据值对数组进行降序排序 - arsort()----- $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); arsort($age); #--------------------------------------根据键对数组进行降序排序 - krsort()----- $age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43"); krsort($age); #------------------------------------------------数组排序--------------------------------------------------- #------------------------------------------------全局变量 - 超全局变量------------------------------------------ #超全局变量是: # $GLOBALS # $_SERVER # $_REQUEST # $_POST # $_GET # $_FILES # $_ENV # $_COOKIE # $_SESSION #----------------------------------$GLOBALS — 引用全局作用域中可用的全部变量-------------- $x = 75; $y = 25; function addition() { $GLOBALS[‘z‘] = $GLOBALS[‘x‘] + $GLOBALS[‘y‘]; } addition(); echo $z; #--------------------------------$_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息------ echo $_SERVER[‘PHP_SELF‘]; echo "<br>"; echo $_SERVER[‘SERVER_NAME‘]; echo "<br>"; echo $_SERVER[‘HTTP_HOST‘]; echo "<br>"; echo $_SERVER[‘HTTP_REFERER‘]; echo "<br>"; echo $_SERVER[‘HTTP_USER_AGENT‘]; echo "<br>"; echo $_SERVER[‘SCRIPT_NAME‘]; #能够在 $_SERVER 中访问的最重要的元素: #$_SERVER[‘PHP_SELF‘] 返回当前执行脚本的文件名。 #$_SERVER[‘GATEWAY_INTERFACE‘] 返回服务器使用的 CGI 规范的版本。 #$_SERVER[‘SERVER_ADDR‘] 返回当前运行脚本所在的服务器的 IP 地址。 #$_SERVER[‘SERVER_NAME‘] 返回当前运行脚本所在的服务器的主机名(比如 www.w3school.com.cn)。 #$_SERVER[‘SERVER_SOFTWARE‘] 返回服务器标识字符串(比如 Apache/2.2.24)。 #$_SERVER[‘SERVER_PROTOCOL‘] 返回请求页面时通信协议的名称和版本(例如,“HTTP/1.0”)。 #$_SERVER[‘REQUEST_METHOD‘] 返回访问页面使用的请求方法(例如 POST)。 #$_SERVER[‘REQUEST_TIME‘] 返回请求开始时的时间戳(例如 1577687494)。 #$_SERVER[‘QUERY_STRING‘] 返回查询字符串,如果是通过查询字符串访问此页面。 #$_SERVER[‘HTTP_ACCEPT‘] 返回来自当前请求的请求头。 #$_SERVER[‘HTTP_ACCEPT_CHARSET‘] 返回来自当前请求的 Accept_Charset 头( 例如 utf-8,ISO-8859-1) #$_SERVER[‘HTTP_HOST‘] 返回来自当前请求的 Host 头。 #$_SERVER[‘HTTP_REFERER‘] 返回当前页面的完整 URL(不可靠,因为不是所有用户代理都支持)。 #$_SERVER[‘HTTPS‘] 是否通过安全 HTTP 协议查询脚本。 #$_SERVER[‘REMOTE_ADDR‘] 返回浏览当前页面的用户的 IP 地址。 #$_SERVER[‘REMOTE_HOST‘] 返回浏览当前页面的用户的主机名。 #$_SERVER[‘REMOTE_PORT‘] 返回用户机器上连接到 Web 服务器所使用的端口号。 #$_SERVER[‘SCRIPT_FILENAME‘] 返回当前执行脚本的绝对路径。 #$_SERVER[‘SERVER_ADMIN‘] 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。 #$_SERVER[‘SERVER_PORT‘] Web 服务器使用的端口。默认值为 “80”。 #$_SERVER[‘SERVER_SIGNATURE‘] 返回服务器版本和虚拟主机名。 #$_SERVER[‘PATH_TRANSLATED‘] 当前脚本所在文件系统(非文档根目录)的基本路径。 #$_SERVER[‘SCRIPT_NAME‘] 返回当前脚本的路径。 #$_SERVER[‘SCRIPT_URI‘] 返回当前页面的 URI。 #########################由于其余几个与HTML相互作用所以放在下一篇中来讲############################### #------------------------------------------------全局变量 - 超全局变量------------------------------------------ ?>
From:http://www.w3school.com.cn/php/index.asp
时间: 2024-12-31 15:49:52