PHP之基本操作
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);
PHP之基本操作的更多相关文章
- Key/Value之王Memcached初探:二、Memcached在.Net中的基本操作
一.Memcached ClientLib For .Net 首先,不得不说,许多语言都实现了连接Memcached的客户端,其中以Perl.PHP为主. 仅仅memcached网站上列出的语言就有: ...
- Android Notification 详解(一)——基本操作
Android Notification 详解(一)--基本操作 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Notification 文中如有纰 ...
- Android Notification 详解——基本操作
Android Notification 详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 前几天项目中有用到 Android 通知相关的内容,索性把 Android Notificatio ...
- 三、Redis基本操作——List
小喵的唠叨话:前面我们介绍了Redis的string的数据结构的原理和操作.当时我们提到Redis的键值对不仅仅是字符串.而这次我们就要介绍Redis的第二个数据结构了,List(链表).由于List ...
- 二、Redis基本操作——String(实战篇)
小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大.万一有写错的地方,岂不是会误导很多筒子们.所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠 ...
- 一、Redis基本操作——String(原理篇)
小喵的唠叨话:最近京东图书大减价,小喵手痒了就买了本<Redis设计与实现>[1]来看看.这里权当小喵看书的笔记啦.这一系列的模式,主要是先介绍Redis的实现原理(可能很大一部分会直接照 ...
- Linq查询基本操作
摘要:本文介绍Linq查询基本操作(查询关键字) - from 子句 - where 子句 - select子句 - group 子句 - into 子句 - orderby 子句 - join 子句 ...
- C++ map的基本操作和使用
原文地址:http://blog.sina.com.cn/s/blog_61533c9b0100fa7w.html Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可 ...
- python之最强王者(10)———文件(File)、输入输出的基本操作
1. Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 2.打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式. ...
- 【项目管理】图解GitHub基本操作
一.注册并登陆到github网站 1.1.打开github网站首页(https://github.com/) 1.2.注册一个自己的github账号 创建账户后再验证自己的邮箱,然后就可以登陆到git ...
随机推荐
- 华为P20无线投屏到电脑 绝地求生投射电脑
如今出门在外,必不可少的就是手机,如果没有了手机,每个人都会感觉没有安全感,感觉和世界失去了联系,我们每天每个人都在使用手机,但是作为华为手机用户的你,了解华为P20无线投屏到电脑是怎么操作的吗? 使 ...
- 熊猫ios手游直播教程 苹果投屏电脑
如今手游越来越火热,不管是大人小孩都喜欢在闲暇时刻玩一玩游戏,手机屏幕终归还是有点小的,所以有的小伙伴想要将手机投屏到电脑上,岂不是一件很好的事情,iPhone是有镜像投屏功能的,下面给大家分享熊猫i ...
- 33.Odoo产品分析 (四) – 工具板块(4) – 问题追踪及群发邮件营销(1)
查看Odoo产品分析系列--目录 问题追踪 该应用程序允许您管理项目中可能遇到的问题,如系统中的bug.客户投诉或物料故障. 该模块安装后没有菜单显示,而是作为后台管理,接收一些问题报告. 群发邮件 ...
- leetcode-217存在重复元素
leetcode-217存在重复元素 题意 给定一个整数数组,判断是否存在重复元素. 如果任何值在数组中出现至少两次,函数返回 true.如果数组中每个元素都不相同,则返回 false. 示例 1: ...
- SpringBoot集成Swagger接口管理工具
手写Api文档的几个痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时. 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管 ...
- C++反射机制:可变参数模板实现C++反射
1. 概要 本文描述一个通过C++可变参数模板实现C++反射机制的方法.该方法非常实用,在Nebula高性能网络框架中大量应用,实现了非常强大的动态加载动态创建功能.Nebula框架在Github ...
- Nosql数据库分类
一.KV存储 包括:Redis,Memcached 特点:使用key快速查到其value,Memcached支持string类型的value,Redis除string类型外还支持set,hash,so ...
- MySQL 5.7开启二进制日志注意事项
最近才开始将部分MySQL 5.6升级到MySQL 5.7, 在开启MySQL的二进制日志时,发现MySQL 5.7 与MySQL 5.6已有细微区别.如果在my.cnf配置文件中,只设置了全局系统变 ...
- Django创建新项目
1.安装Django 终端中输入:pip install Django==2.1.4 等于号后面的为版本,选则适合自己python的版本,如下图 Django version Py ...
- ASP.NET MVC从视图传参到控制器的几种形式
1. 传递数组 $(function () { var value = ["C#", "JAVA", "PHP"]; $("inp ...