我的php學習第二十天——PHP簡介及mysql的操作

PHP MySQL 編程語言 HTML 重蔚自留地 2017-04-30

上個筆記寫到了數據庫的配置具體請看《我的php學習第十九天——PHP工作原理及mysql的配置

1.現在來記錄下數據庫的操作。

登錄MySQL客戶端:mysql -hlocalhost -uroot -proot

顯示數據庫:show databases;

創建數據庫:create database if not exists db_name charset utf8; //默認的字符集是latin1

我的php學習第二十天——PHP簡介及mysql的操作

上圖表示:創建數據庫成功,有一個行被影響。

刪除數據庫:drop database if exists db_name;

注意:不管是MySQL,還是PHP,應該儘量少的把錯誤信息暴露給瀏覽者。

選擇數據庫:use db_name;

操作數據庫中數據的一個流程

第一步:連接到MySQL數據庫服務器

第二步:選擇一個數據庫作為當前操作的數據庫,在虛擬主機中,對別人的數據庫無權限

我的php學習第二十天——PHP簡介及mysql的操作

第三步:修改返回數據的字符集: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條記錄

2.PHP簡介

PHP,Hypertext preprocessor,超文本預處理器。

PHP是服務器端的腳本語言,只能在服務器來運行;

客戶端看不到什麼的PHP代碼和註釋,JS在“源代碼”中可以看見;

PHP的語法,結合了C、Java、Perl、JS等語言的特點;

PHP主要應用於網站方面,這種結構B/S結構;

PHP的入門相當於簡單(Java)。

3.PHP語言基礎

PHP代碼和ASP、JSP一樣,都是直接嵌入到HTML網頁中去;

PHP的標記:<?php …… ?>

PHP的每行程序必須以英文下的分號(;)結束;JS的語句的分號可有可無;

PHP語言是區分大小寫的,但關鍵字和函數名不區分大小寫;比如:true 、TRUE

上述代碼的說明(與JS的不同之處)

echo函數,嚴格來說是一個語法結構,輸出字符集到網頁中;echo和後面要輸出的內容間至少有一個空格;

$name是PHP中的變量,每個變量必須以“$”符號開頭;

"$name 的年齡是 $age"在PHP中,可以在雙引號內,直接書寫變量名稱;JS中不可以;

4.PHP文件的訪問

因為PHP文件是服務器端腳本程序,因此訪問PHP文件,必須要經過服務器的處理,才能看到結果。PHP的訪問與HTML的訪問完全不一樣,PHP文件的訪問,是必須要經過服務器來處理,也就是必須要進行虛擬主機的配置,才可以執行PHP文件。最在客戶端,看到的只是PHP的執行結果HTML代碼,PHP源代碼是看不見的,是為了保證網站的安全。

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

說明:www.cwhello.com指向的是一個虛擬空間(目錄),該目錄要有一定的訪問權限。

5.PHP註釋

單行註釋://或#

多行註釋:/*註釋內容*/

注意:PHP的註釋在發往客戶端之前,已經被過濾掉了。

6.PHP變量

變量是存儲數據的臨時空間。如:$name = “張三”;

變量的命名規則:

  • 變量中可以包含:大小寫字母、數字、下劃線。

  • PHP中變量必須以美元符號$開頭;

  • PHP中變量的不需要提前聲明,使用時直接賦值即可;

  • PHP的變量不能以數字開頭;如:$12abc = 100 //不合法的變量名

  • PHP中的變量名可以是關鍵字(JS的關鍵字不能作為變量名);如:$true = 100;

7.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

8.判斷變量的數據類型

var_dump()

含義:打印變量的值和類型

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

注意:該函數直接就可以輸出結果,前面不需要再加echo輸出語句。

提示:如果使用UTF8來輸出漢字,則一個漢字用3個字節表示;如果使用GBK或GB2312,則一個漢字用2個字節表示。

通過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 "不空";

}

相關推薦

推薦中...