PHP之基本操作

时间:2023-05-16 08:22:08

PHP基础操作
1.session操作
  手动设置session生存期方式一:
    session_start();
    // 设置生存时间
    $lifeTime = 24*6000;
    setcookie(session_name(),session_id(),time()+$lifeTime,"/");
    注:该方法需要在session_start()之后设置

  方式二:
    $lifeTime = 24*6000;
    session_set_cookie_params($lifeTime);
    session_start();
    $_SESSION["admin"] = true;
    注:该方法需要在session_start()之前设置

  设置一个存放目录:
    $savePath = "./session_save_dir/";
    session_save_path($savePath);
    注:该方法需要在session_start()之前设置

2.字符串处理常用方法
  strlen("字符串"):取字符串长度

  strcmp($a,$b):判断两个字符串是否相同,相同返回0,$a>$b返回1,$a<$b返回-1,区分大小写

  strcasecmp($a,$b):判断两个字符串是否相同,相同返回0,$a>$b返回1,$a<$b返回-1,不区分大小写

  strlower("字符串"):转小写

  stroupper("字符串"):转大写

  explode(separator(必须,规定在哪里分割字符串),string(必须,要分割的字符串),limit(可选,规定所返回的数组元素的数目))
  说明:把字符串打散为数组(separator参数不能是一个空字符串,该函数是二进制安全的)。

  implode(separator(可选,规定数组元素之间放置的内容,默认空字符串),array(必须,要组合为字符串的数组))
  说明:函数返回一个由数组元素组合成的字符串(该函数接受两种参数顺序)

  substr_replace(string(必须,规定要检查的字符串),replacement(必须,规定要插入的字符串),start(必须,规定字符串的何处开始替换),length(可选,规定要替换多少个字符,默认是与字符串那长度相同))
  说明:函数把字符串的一部分替换为另一个字符串

  str_replace(find(必须,规定要查找的值),replace(必须,规定替换find中的值的值),string(必须,规定被搜索的字符串),count(可选,一个变量,对替换数进行计数))
  说明:该函数替换字符串中的一些字符(区分大小写,str_ireplace()不区分大小写)

  substr(string(必须,规定要返回其中一部分的字符串),strat(必须,规定在字符串的何处开始),length(可选,规定要返回的字符串长度,默认直到字符串的结尾))
  说明:该函数返回字符串的一部分。

  str_split(string(必须,规定要分割的字符串),length(可选,规定每个数组元素的长度,默认是1))
  说明:函数把字符串分割的字符串。

  stristr(string(必须,规定被搜索的字符串),search(必须,规定所搜索的字符串),before_search(可选,一个默认值为"false"的布尔值。))
  说明:函数搜索字符串在另一个字符串中的第一次出现(该函数不区分大小写,区分大小写可以用strstr())。

  trim(string(必须,规定要检查的字符串),charlist(可选,规定从字符串中删除哪些字符))
  说明:函数一处字符串两侧的空白字符或其他预定义字符,ltrim(删除左侧),rtrim(删除右侧)

3.表单验证
<?php
// define variables and set to empty values
$name = $email = $gender = $comment = $website = "";

// POST请求过来是为变量进行赋值操作
if ($_SERVER["REQUEST_METHOD"] == "POST") {
  $name = test_input($_POST["name"]);
  $email = test_input($_POST["email"]);
  $website = test_input($_POST["website"]);
  $comment = test_input($_POST["comment"]);
  $gender = test_input($_POST["gender"]);
}

// 提供数据清洗功能
function test_input($data) {
  $data = trim($data);
  $data = stripslashes($data);
  $data = htmlspecialchars($data);
  return $data;
}
?>
// 常规form表单设置
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]); ?>">
  Name: <input type="text" name="name"><br>
  E-mail: <input type="text" name="email"><br>
  Website: <input type="text" name="website"><br>
  gender:<input type="radio" name="gender" value="female">女性
  <input type="radio" name="gender" value="male">男性<br>
  Comment: <textarea name="comment" rows="5" cols="40"></textarea>
  <input type="submit">
</form>

4.for循环
  for($x=0;$x<=10;$x++){
    echo"数字是:$x<br>";
  }

  foreach(数组 as 变量){
    echo"变量";
  }

  foreach(关联数组 as $key => $value){
    echo "key is $key<br>";
    echo "value is $value";
  }

5.时间日期
  data(format(必须,规定时间戳的格式),timestamp(可选,规定时间戳,默认是当前事件和日期))
  $time = date("M-D-Y,h-i-sa");
  h: 带有首位零的12小时格式
  i:带有首位零的分钟
  s: 带有首位零的秒(00-59)
  a: 小写的午前和午后(am或pm)
  echo "$time"

  strtotime():
    使用:
      $d=strtotime("next Saturday");
      echo date("Y-M-D h:i:sa",$d)
    下个周六的时间:
      $d=strtotime("next Saturday");
      echo date("Y-m-d h:i:sa", $d) . "<br>";

6.PHP之MySQL Connect
  链接:
    $con = mysql_connect("severname","username","password");
  是否链接成功的判断:
    if (!$con)
    {
    die('Could not connect: ' . mysql_error());
    }
  断开连接:
    mysql_close($con);

6.1 PHP之MySQL Create:
  创建库命令:
    mysql_query("CREATE DATABASE my_db",$con);
  进入创建的数据库:
    mysql_select_db("my_db",$con);
  创建表命令:
    $sql = "CREATE TABLE Persons
    (
    FirstName varchar(15),
    LastName varchar(15),
    Age int
    )";
    mysql_query($sql,$con);
    mysql_close($con);

6.2 PHP之MySQL Insert into
  connect链接数据库之后再进入该数据库:
    mysql_select_db("my_db",$con);
  然后再执行插入数据操作:
    mysql_query("INSERT INTO Persons (FirstName,LastName,Age) VALUES("Glenn","Quagmire","33")");
  最后断开数据链接:
    mysql_close($con);

6.3 PHP之MySQL Select、Where、Order by
  这里还是和上面一样进入要查询的数据所在的数据库,然后使用mysql_query()执行命令,它返回的一个数组类型的数据,可以使用while循环通过mysql_fetch_arry()函数取出全部数据。

6.4 PHP之MySQL Update
  connect链接数据库之后再进入该数据库:
    mysql_select_db("my_db",$con);
  然后再执行插入数据操作:
    mysql_query("UPDATE Persons SET Age = '36' WHERE FirstName = 'Peter' AND LastName = 'Griffin'");
  最后断开数据链接:
    mysql_close($con);

6.5 PHP之MySQL Delete
  connect链接数据库之后再进入该数据库:
    mysql_select_db("my_db",$con);
  然后再执行插入数据操作:
    mysql_query("DELETE FROM Persons WHERE LastName='Griffin'");
  最后断开数据链接:
    mysql_close($con);