PHP头条
热点:

[PHP] php基础,


一、php程序结构

<!DOCTYPE html>
<html>
<body>

<?php
echo "我的第一段 PHP 脚本!";
?>

</body>
</html>
二、php中的注释

<?php
// 这是单行注释
# 这也是单行注释
/*
这是多行注释块
它横跨了
多行
*/
?>
三、php中的大小写

在 PHP 中,所有用户定义的函数、类和关键词(例如 if、else、echo 等等)都对大小写不敏感。

<?php
ECHO "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 静态变量

<?php
function 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 对象

<?php
class 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语句

<?php
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";
}
?>
十一、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函数

<?php
function 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也可以换成get
Name: <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可以换成$_GET
Your 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>
后端脚本:

<?php
if ((($_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 cookie
echo $_COOKIE["user"];
// A way to view all cookies
print_r($_COOKIE);
?>
22.3 使用 isset() 函数来确认是否已设置了 cookie

isset($_COOKIE["user"])
22.4 删除 cookie

<?php 
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);
?>
二十三、php session
PHP session 变量用于存储有关用户会话的信息,或更改用户会话的设置。Session 变量保存的信息是单一用户的,并且可供应用程序中的所有页面使用。
23.1 开始 PHP Session,在您把用户信息存储到 PHP session 中之前,首先必须启动会话。注释:session_start() 函数必须位于 <html> 标签之前:

<?php
session_start();
// store session data
$_SESSION['views']=1;
?>
<html>
<body>
<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>
</body>
</html>
23.2 终结 Session

unset($_SESSION['views']);
session_destroy();
二十四、php错误处理

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

















www.phpzy.comtrue/php/25538.htmlTechArticle[PHP] php基础, 一、php程序结构 !DOCTYPE htmlhtmlbody?phpecho "我的第一段 PHP 脚本!";?/body/html 二、php中的注释 ?php// 这是单行注释# 这也是单行注释/*这是多行注释块它横跨了多行*/? 三、php中...

相关文章

    暂无相关文章

PHP之友评论

今天推荐