[PHP] php基础
来源:互联网 发布:云计算平台storm 编辑:程序博客网 时间:2024/06/06 17:50
一、php程序结构
<!DOCTYPE html><html><body><?phpecho "我的第一段 PHP 脚本!";?></body></html>二、php中的注释
<?php// 这是单行注释# 这也是单行注释/*这是多行注释块它横跨了多行*/?>三、php中的大小写
在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感。
<?phpECHO "Hello World!<br>";echo "Hello World!<br>";EcHo "Hello World!<br>";?>不过在 PHP 中,所有变量都对大小写敏感。在下面的例子中,只有第一条语句会显示 $color 变量的值
<?php$color="red";echo "My car is " . $color . "<br>";echo "My house is " . $COLOR . "<br>";echo "My boat is " . $coLOR . "<br>";?>四、php中的变量
<?php$txt="Hello world!";$x=5;$y=10.5;?>4.1 全局变量
<?php$x=5;$y=10;function myTest() { global $x,$y; $y=$x+$y;}myTest();echo $y; // 输出 15?>PHP 同时在名为 $GLOBALS[index] 的数组中存储了所有的全局变量
<?php$x=5;$y=10;function myTest() { $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];} myTest();echo $y; // 输出 15?>4.2 静态变量
<?phpfunction myTest() { static $x=0; echo $x; $x++;}myTest();myTest();myTest();?>五、php的输出
echo(),print()函数
echo - 能够输出一个以上的字符串
print - 只能输出一个字符串,并始终返回 1
echo "Hello world!<br>";print "Hello world!<br>";六、php的数据类型
6.1 PHP 字符串
$x = "Hello world!";6.2 PHP 整数
$x = 5985;$x = -345; // 负数$x = 0x8C; // 十六进制数$x = 047; // 八进制数6.3 PHP 浮点数
$x = 10.365;$x = 2.4e3;$x = 8E-5;6.4 PHP 逻辑
$x=true;$y=false;6.5 PHP 数组
$cars=array("Volvo","BMW","SAAB");6.6 PHP 对象
<?phpclass Car{ var $color; function Car($color="green") { $this->color = $color; } function what_color() { return $this->color; }}?>6.7 PHP NULL 值
<?php$x="Hello world!";$x=null;var_dump($x);?>七、php字符串函数举例
strlen() 函数返回字符串的长度,以字符计。
echo strlen("Hello world!");以上代码的输出是:12
strpos() 函数用于检索字符串内指定的字符或文本。
echo strpos("Hello world!","world");以上代码的输出是:6
八、php常量
下例创建了一个对大小写敏感的常量
define("GREETING", "Welcome to W3School.com.cn!");下例创建了一个对大小写不敏感的常量
define("GREETING", "Welcome to W3School.com.cn!", true);九、if语句
<?php$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!";}?>十、switch语句
<?phpswitch ($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";}?>十一、while循环
11.1 while
<?php $x=1; while($x<=5) { echo "这个数字是:$x <br>"; $x++;} ?>11.2 do-while
<?php $x=1; do { echo "这个数字是:$x <br>"; $x++;} while ($x<=5);?>十二、for循环
12.1 for
<?php for ($x=0; $x<=10; $x++) { echo "数字是:$x <br>";} ?>12.2 foreach
<?php $colors = array("red","green","blue","yellow"); foreach ($colors as $value) { echo "$value <br>";}?>十三、php函数
<?phpfunction sum($x,$y) { $z=$x+$y; return $z;}echo "5 + 10 = " . sum(5,10) . "<br>";echo "2 + 4 = " . sum(2,4);?>十四、php数组
14.1 索引数组
<?php$cars=array("Volvo","BMW","SAAB");echo "I like " . $cars[0] . ", " . $cars[1] . " and " . $cars[2] . ".";?>14.2 获得数组的长度 - count() 函数
<?php$cars=array("Volvo","BMW","SAAB");echo count($cars);?>14.3 遍历索引数组
<?php$cars=array("Volvo","BMW","SAAB");$arrlength=count($cars);for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>";}?>14.4 PHP 关联数组
<?php$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");echo "Peter is " . $age['Peter'] . " years old.";?>14.5 遍历关联数组
<?php$age=array("Bill"=>"35","Steve"=>"37","Peter"=>"43");foreach($age as $x=>$x_value) { echo "Key=" . $x . ", Value=" . $x_value; echo "<br>";}?>十五、php排序
sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序
十六、php超全局变量
16.1 $GLOBALS — 引用全局作用域中可用的全部变量
<?php $x = 75; $y = 25;function addition() { $GLOBALS['z'] = $GLOBALS['x'] + $GLOBALS['y']; }addition(); echo $z; ?>16.2 $_SERVER 这种超全局变量保存关于报头、路径和脚本位置的信息
<?php echo $_SERVER['PHP_SELF'];?>16.3 $_REQUEST 用于收集通过get和post提交的数据
$name = $_REQUEST['fname'];16.4 $_POST 广泛用于收集提交 method="post" 的 HTML 表单后的表单数据。
<html><body><form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">Name: <input type="text" name="fname"><input type="submit"></form><?php $name = $_POST['fname']; echo $name; ?></body></html>16.5 PHP $_GET可用于收集提交 HTML 表单 (method="get") 之后的表单数据。$_GET 也可以收集 URL 中的发送的数据。
前端:<a href="test_get.php?subject=PHP&web=W3school.com.cn">测试 $GET</a>后端:<?php echo "Study " . $_GET['subject'] . " at " . $_GET['web'];?>
十七、php表单
前端表单
<html><body><form action="welcome.php" method="post"> post也可以换成getName: <input type="text" name="name"><br>E-mail: <input type="text" name="email"><br><input type="submit"></form></body>
后端脚本
<html><body>Welcome <?php echo $_POST["name"]; ?><br> $_POST可以换成$_GETYour email address is: <?php echo $_POST["email"]; ?></body></html>
十八、php多维数组
<?php$cars = array ( array("Volvo",33,20), array("BMW",17,15), array("Saab",5,2), array("Land Rover",15,11) ); for ($row = 0; $row < 4; $row++) { echo "<p><b>行数 $row</b></p>"; echo "<ul>"; for ($col = 0; $col < 3; $col++) { echo "<li>".$cars[$row][$col]."</li>"; } echo "</ul>";}?>十九、PHP Include 文件
<?php include 'footer.php';?><?require 'noFileExists.php';?>require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
include 只生成警告(E_WARNING),并且脚本会继续
请在此时使用 require:当文件被应用程序请求时。
请在此时使用 include:当文件不是必需的,且应用程序在文件未找到时应该继续运行时。
二十、php文件处理
20.1 读文件
<?php$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");echo fread($myfile,filesize("webdictionary.txt"));fclose($myfile);?>20.2 写文件
<?php$myfile = fopen("newfile.txt", "w") or die("Unable to open file!");$txt = "Bill Gates\n";fwrite($myfile, $txt);$txt = "Steve Jobs\n";fwrite($myfile, $txt);fclose($myfile);?>PHP 读取文件 - fread()
PHP 关闭文件 - fclose()
PHP 读取单行文件 - fgets()
PHP 检查 End-Of-File - feof()
PHP 读取单字符 - fgetc()
PHP 创建文件 - fopen()
PHP 写入文件 - fwrite()
二十一、php文件上传
前端表单:
<html><body><form action="upload_file.php" method="post"enctype="multipart/form-data"><label for="file">Filename:</label><input type="file" name="file" id="file" /> <br /><input type="submit" name="submit" value="Submit" /></form></body></html>后端脚本:
<?phpif ((($_FILES["file"]["type"] == "image/gif")|| ($_FILES["file"]["type"] == "image/jpeg")|| ($_FILES["file"]["type"] == "image/pjpeg"))&& ($_FILES["file"]["size"] < 20000)) { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["file"]["name"] . "<br />"; echo "Type: " . $_FILES["file"]["type"] . "<br />"; echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; if (file_exists("upload/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " already exists. "; } else { move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]); echo "Stored in: " . "upload/" . $_FILES["file"]["name"]; } } }else { echo "Invalid file"; }?>二十二、php cookie
cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。
22.1 创建cookie
setcookie(name, value, expire, path, domain);22.2 取回cookie
<?php// Print a cookieecho $_COOKIE["user"];// A way to view all cookiesprint_r($_COOKIE);?>22.3 使用 isset() 函数来确认是否已设置了 cookie
isset($_COOKIE["user"])22.4 删除 cookie
<?php // set the expiration date to one hour agosetcookie("user", "", time()-3600);?>二十三、php session
PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
23.1 开始 PHP Session,在您把用户信息存储到 PHP session 中之前,首先必须启动会话。注释:session_start() 函数必须位于 <html> 标签之前:
<?phpsession_start();// store session data$_SESSION['views']=1;?><html><body><?php//retrieve session dataecho "Pageviews=". $_SESSION['views'];?></body></html>23.2 终结 Session
unset($_SESSION['views']);session_destroy();二十四、php错误处理
<?phpif(!file_exists("welcome.txt")) { die("File not found"); }else { $file=fopen("welcome.txt","r"); }?>二十五、php异常处理
<?php//创建可抛出一个异常的函数function checkNum($number) { if($number>1) { throw new Exception("Value must be 1 or below"); } return true; }//在 "try" 代码块中触发异常try { checkNum(2); //If the exception is thrown, this text will not be shown echo 'If you see this, the number is 1 or below'; }//捕获异常catch(Exception $e) { echo 'Message: ' .$e->getMessage(); }?>二十六、php过滤器
<?php$int = 123;if(!filter_var($int, FILTER_VALIDATE_INT)) { echo("Integer is not valid"); }else { echo("Integer is valid"); }?>二十七、php数据库
<?php$con = mysql_connect("localhost","peter","abc123");if (!$con) { die('Could not connect: ' . mysql_error()); }mysql_select_db("my_db", $con);$result = mysql_query("SELECT * FROM Persons ORDER BY age");while($row = mysql_fetch_array($result)) { echo $row['FirstName']; echo " " . $row['LastName']; echo " " . $row['Age']; echo "<br />"; }mysql_close($con);?>
0 0
- 【php】php语法基础
- [PHP] php基础
- PHP基础
- php基础
- php基础
- php基础
- php基础
- php 基础
- php基础
- php基础
- PHP基础
- php基础
- php基础
- PHP基础
- php基础
- Php基础
- php基础
- PHP基础
- 解决传中文参数乱码的问题
- Key-Value Observing
- poj 2965 The Pilots Brothers' refrigerator
- 别等待-想到什么就去做
- 使用php语句将数据库*.sql文件导入数据库
- [PHP] php基础
- Linux内核中进程上下文和中断上下文的理解
- 回文链表(Java)
- Android开发学习笔记:Intent的简介以及属性的详解
- 函数指针
- Android第四讲——常用的基本控件(一)TextView、EditText、Button、RadioButton、CheckButton、ImageView
- IOS真机运行环境操作步骤
- 既然没有人来说出真相,那就只有我来了
- 2015/8/24/checkBox/imageView/ArrayAdapter/SimpleAdapter/自定义Adapter