我的php学习第二十天之MySQL基础篇

昨日回顾

登录MySQL客户端:mysql  -hlocalhost  -uroot  -proot

显示数据库:show databases;

创建数据库:create database if not exists db_name  charset  utf8;  //默认的字符集是latin1

image001

上图表示:创建数据库成功,有一个行被影响。

删除数据库:drop database if exists db_name;

注意:不管是MySQL,还是PHP,应该尽量少的把错误信息暴露给浏览者。

选择数据库:use db_name;

操作数据库中数据的一个流程

第一步:连接到MySQL数据库服务器

第二步:选择一个数据库作为当前操作的数据库,在虚拟主机中,对别人的数据库无权限

image003

第三步:修改返回数据的字符集:set names utf8

第四步:对某个表进行操作:增、删、改、查

创建数据表:create table table_name(col_name  type   attribute)

create table students(

id int(5) not null auto_increment primary key,

name varchar(10) not null,

sex tinyint(1) not null default 1,  # 1代表男,0代表女

age tinyint(2) not null default 0,

edu char(9) not null,  # GBK字符集中,一个汉字两个字节;UTF8字符集中,一个汉字三个字节;

addate datetime

);

列的类型:

tinyint  0-255 或 -128——127    小型整数

int      一般整数

float(m,n)   浮点数

varchar(m)  单行文本

Text        多行文本

Date       日期型

Time      日期型

Datetime    日期时间型

SQL语句:增、删、改、查

(1)INSERT INTO增加记录

insert  into  table_name(title,content,addate)  values(‘Beijing’,’content’,now());

(2)DELETE FROM删除记录

delete from table_name where id>10 and id<100;

(3)UPDATE SET修改一条记录

update table_name set title=“新的title”,author=“user” where id=10

(4)SELECT查询记录

SELECT * FROM table_name where id>10;

       SELECT title,author,source FROM table_name WHERE title like(‘%苹果%’);  //模糊查询

       SELECT * FROM table_name where id>10 ORDER BY hits DESC;   //对点击率降序排列

       SELECT * FROM table_name where id>10 ORDER BY hits DESC LIMIT 10,10;//返回第10行开始的10条记录

PHP简介

PHP,Hypertext preprocessor,超文本预处理器。

PHP是服务器端的脚本语言,只能在服务器来运行;

客户端看不到什么的PHP代码和注释,JS在“源代码”中可以看见;

PHP的语法,结合了C、Java、Perl、JS等语言的特点;

PHP主要应用于网站方面,这种结构B/S结构;

PHP的入门相当于简单(Java)。

PHP语言基础

PHP代码和ASP、JSP一样,都是直接嵌入到HTML网页中去;

PHP的标记:<?php   …… ?>

PHP的每行程序必须以英文下的分号(😉结束;JS的语句的分号可有可无;

PHP语言是区分大小写的,但关键字函数名不区分大小写;比如:true 、TRUE

<?php

$name = "重蔚自留地";

$age = 30;

echo "$name 的年龄是 $age";  //相当于JS的document.write( )

?>

上述代码的说明(与JS的不同之处)

echo函数,严格来说是一个语法结构,输出字符集到网页中;echo和后面要输出的内容间至少有一个空格;

$name是PHP中的变量,每个变量必须以“$”符号开头;

"$name 的年龄是 $age"在PHP中,可以在双引号内,直接书写变量名称;JS中不可以

PHP文件的访问

因为PHP文件是服务器端脚本程序,因此访问PHP文件,必须要经过服务器的处理,才能看到结果。PHP的访问与HTML的访问完全不一样,PHP文件的访问,是必须要经过服务器来处理,也就是必须要进行虚拟主机的配置,才可以执行PHP文件。最在客户端,看到的只是PHP的执行结果HTML代码,PHP源代码是看不见的,是为了保证网站的安全。

举例:http://www.cwhello.com/about/index.php

说明:www.cwhello.com指向的是一个虚拟空间(目录),该目录要有一定的访问权限。

PHP注释

单行注释://或#

多行注释:/*注释内容*/

注意:PHP的注释在发往客户端之前,已经被过滤掉了。

PHP变量

变量是存储数据的临时空间。如:$name = “张三丰”;

变量的命名规则:

  • 变量中可以包含:大小写字母、数字、下划线。
  • PHP中变量必须以美元符号$开头;
  • PHP中变量的不需要提前声明,使用时直接赋值即可;
  • PHP的变量不能以数字开头;如:$12abc = 100 //不合法的变量名
  • PHP中的变量名可以是关键字(JS的关键字不能作为变量名);如:$true = 100;

PHP变量数据类型

PHP和JS中,变量的类型,主要取决于赋的什么值。

JS中的数据类型:

  • 基本数据类型:string、boolean、number、null、undefined
  • 复合数据类型:array、object、function

PHP中的数据类型:

  • 基本数据类型(4):int(整型)、float(浮点型)、boolean(布尔型)、string(字符型)
  • 复合数据类型(2):array(数组)、object(对象)
  • 特殊数据类型(2):resource(资源)、 NULL(空)

资源类型:可以这样理解,访问外部文件时,返回的结果。

比如:PHP连接数据库、PHP创建图片文件。

NULL型:只有一个值NULL,代表变量没有赋值。以下情况代表NULL

       $A = NULL;   //给一个变量赋一个NULL值

       unset($a);  //删除一个变量

布尔型:只有两个值true和false。

整型:就是指整数,10  、 100 、 -100  、-23

浮点型:就是指小数,90  、23.90  、-90  、89

字符型

字符串的表达方式有三种方法:

(1)用单引号引起来的,在单引号内只能使用 ’、

举例:$name = ‘Beijing’;

(2)用双引号引起来的,在双引号内可以使用所有的转义字符。

举例:$name = “Beijing”;

(3)heredoc方式:可以保存长文本

heredoc的语法格式

       $str = <<<heredoc

       //中间可以书写很多内容

heredoc;

 

使用注意事项

1)heredoc是自己定义的名字,可以随便指定;比如:eot、heredoc

2)<<<heredoc是长文本的开始标记

3)heredoc;  是长文本的结束标记,heredoc;必须单独一行,并且不能缩进。

4)在这种格式下,所有的符号都可以使用;

5)如果要引用变量时,请将变量放在{}中。如:{$name}

$name = "重蔚";

$str = <<<heredoc

<h1>heredoc的应用——"{$name}"</h1>

<p>这里是一个段落</p>

<ul>

    <li><a href="#">重蔚自留地</a></li>

</ul>

heredoc;

echo $str;

字符串中的注意事项

  • 在双引号中的变量,输出时,只接输出的是
  • 在单引号中的变量,输出时,输出的是变量的名称
  • 如果在一个变量后,跟着非空的字符,则PHP翻译器会糊涂,也就说会当成一个变量来处理。

$str = “广州传智播客$name教育培训中心”;   //会将“$ name教育培训中心”当成一个变量

$str = “广州传智播客{$name}教育培训中心”;  //将翻译器容易糊涂的变量放到{}中 

<?php

//定义一个变量并赋值

$name = "张立峰";

//将变量$name加到字符串的末尾

$str = "广州传智播客PHP基础班开学典礼$name";

//将变量$name放到字符串的中间

$str = "广州传智播客PHP基{$name}础班开学典礼";

$str = "广州传智播客PHP基$name 础班开学典礼";

//将变量$name放在单引号字符串

$str = '广州传智播客PHP基$name 础班开学典礼';

//将变量$name和字符串连接起来

$str = "广州传智播客PHP基".$name."础班开学典礼";

//将变量$name加上100,求结果

$str = "广州传智播客PHP基".($name+100)."础班开学典礼";

//输出结果

echo $str;

?>

判断变量的数据类型

var_dump()

含义:打印变量的值和类型

格式:var_dump($var1,$var2,$var3,……)

注意:该函数直接就可以输出结果,前面不需要再加echo输出语句。

提示:如果使用UTF8来输出汉字,则一个汉字用3个字节表示;如果使用GBK或GB2312,则一个汉字用2个字节表示。

<?php

//使用 var_dump() 来测试变量的类型

$a = "周更生";

$a = "abc";

$a = 1200;

$a = true;

$a = NULL;

var_dump($a);

?>

通过IS_*函数作判断:结果只有truefalse

is_bool()    判断是不是布尔型

is_string()   判断变量是不是字符串型

is_numeric()  判断变量是不是数值型

is_array()    判断变量是不是数组

is_object()   判断变量是不是对象

$a = 1200;

if(is_int($a))

{

    echo "{$a}是整型";

}else

{

    echo "{$a}不是整型";

}

isset()

含义:判断给定的变量是否设置

格式:bool  isset($var)

返回值:如果存在,则返回true,否则,返回false

注意:一般用于变量的测试,如果用于常量的测试,将返回解析错误。

提示:除了NULL值外,一律都为true

//判断给字的变量是否设置

$a = 0;

$a = 100;

$a = "";

$a = "0";

$a = false;  //返回true

$a = NULL;  //返回false

$a = 0.0;   //返回true

$a = "abc";  //返回true

if(isset($a))

{

echo "OK";

}else

{

echo "NO";

}

empty()

含义:测试变量,如果变量的值为空,则返回true,不空返回false。

格式:bool empty($var)

注意:除了””、”0”、0、false、NULL、0.0这个值外,都返回false。

//判断给定的变量是否为空

$a = 0;

$a = 100;

//$a = "";

//$a = "0";

//$a = false;  //返回true

//$a = NULL;  //返回true

//$a = 0.0;    //返回true

//$a = "abc";  //返回false

if(empty($a))

{

echo "为空";

}else

{

echo "不空";

}

本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/673.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
上一篇 2016年4月27日 15:53
下一篇 2016年5月14日 10:28

相关推荐

  • php的注释与文件引用

    注释 注明解释,对对应的代码进行说明,也可以使对应的代码不起作用。 有三种方式: //、# 单行注释 /*  */  多行注释 文件引用 Include(包括)、require(请求)都可以实现文件引用 Index1.php中内容 <?php ...

    2018年4月4日
    0235
  • 通过php操作mysql来创建数据库(附代码)

    创建数据库 此操作页面的html代码如下: 添加数据库 数据库名 操作 php07 修改 删除 这时我们需要建立一个用户提交数据库名的表单的htnl页面 代码如下: 标题 数据库名: 最后是一个接收用户提交数据并处理的页面...

    2018年3月14日
    0251
  • PHP常用函数大全-(1)php数组处理常用的函数

    (1)php数组处理常用的函数 array_change_key_case — 返回字符串键名全为小写或大写的数组 array_chunk — 将一个数组分割成多个 array_combine — 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其...

    2015年12月7日
    0315
  • php技术的图像压缩处理类

    因为主流的编程思想是:OOP面向对象编程,文件的最新单位是类 思考: 有哪些属性: 原图文件 压缩文件保存的地址 有哪些成员方法: 制作压缩图像的方法

    2018年9月11日 PHP案例操作
    0193
  • php+redis消息队列实现抢购功能

    实现功能: 1. 基于redis队列,防止高并发的超卖 2. 基于mysql的事务加排它锁,防止高并发的超卖 基于redis队列工作流程: 1. 管理员根据goods表中的库存,创建redis商品库存队列 2. 客户端访问秒杀API 3. web服...

    2018年5月21日
    0199
  • 有关DirectoryIndex的说明及变量的理解

    有关DirectoryIndex的说明: DirectoryIndex作用:当用户请求的地址中没有指定要访问的网页名称的时候,在由该指示器来设定返回给用户的网页——默认网页。对于站点来说,就是主页。 它可以出现在主配置文件httpd.c...

    2018年3月14日
    0733
  • PHP基础语法

    PHP标示符 标准标示符 语法:<?php code; ?> 说明:PHP语言自己的标示符,推荐使用,如果当前PHP标示符里面只有PHP代码,结束的标示符(?&gt😉可以省略。 案例: 短标签风格 语法:<?  Code   ;?> 说...

    2017年11月18日 PHP自学教程
    0236
  • 重蔚php学习第三十四天——php数组相关算法

    冒泡排序 快速查找 二分查找(折半查找) 1-----100 50 小了 50---100    75 大了 1------50     25 75 小了 75----100    87 大了 50-----75     62   前提:必须是个有序数组 最后一个快速排序... ...就不...

    2017年10月10日 PHP自学教程
    0266

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息