跟燕十八學習PHP 第十九天 熱身專案完善

2021-06-10 08:28:20 字數 2861 閱讀 4276

/** 

燕十八 公益php培訓 

學習社群:www.zixue.it 

**/<?php

/*$sql = 'select * from user';

$rs = mysql_query($sql,$conn);

while($row = mysql_fetch_assoc($rs))

每次想取多行資料,都要如上步驟,來個while迴圈,能否用函式封裝起來?

要求:函式  getall()

parm: string $sql

parm: resource $conn

return 二維陣列, false

*/$conn = mysql_connect('localhost','root','111111');

if(!$conn)

$sql = 'use test';

mysql_query($sql,$conn);

function getall($sql,$conn)

$res = array();

while($row = mysql_fetch_assoc($rs))

return $res;

}echo '';

$sql = 'select * from stu';

$stus = getall($sql,$conn);

print_r($stus); // 取多行多列的函式封裝

// 再封裝乙個函式,用來專門取一行的場合.

// sql = select * from stu where id=16;

$sql = 'select * from stu where id=16';

$stu = getall($sql,$conn);

print_r($stu);  // 也取出了資料,但是呢是二維陣列,不方便

/*getrow 取出單行資料

parm string $sql; sql語句

parm resource $conn; 資源

return 一維陣列 array/ false

*/function getrow($sql,$conn)

$sql = 'select * from stu where id=16';

$stu = getrow($sql,$conn);

print_r($stu);  // 返回1行陣列,一維陣列

// 又提要求: 幫我查一共有多少個學生?

$sql = 'select count(*) from stu';

$num = getrow($sql,$conn);

print_r($num); 

/*返回的是1維陣列,因此就返回 count(*)單元

array

([count(*)] => 3

)但此處,只是想要數值3,並不想陣列形式

*//*

getone 

parm: string $sql sql語句

parm: resource $conn 資源

return 單個標量值

*/function getone($sql,$conn)

$sql = 'select count(*) from stu';

$num = getone($sql,$conn);

print_r($num); 

<?php

/*日期時間函式,在php中,也是非常常用的函式

頻率僅將於字串和陣列函式

時間戳: 是指1970-01-01 00:00:00 --> 某個時刻所經歷的秒數

問: 你是什麼時間出生的?

答: 我是時間戳1204563241時出生的.

問: 時間戳這麼不易於人來理解,為什麼用時間戳來儲存時間呢?

答: 理由如下

1:便於儲存 2023年之前的時間戳,都沒超過40億,因此用4個字元的int型,就可以儲存了.

2:時間戳就是數學上的乙個值,沒有歧義.

如果用格式,比如中國人 喜歡2023年01月01日,比如有人喜歡 01/01 2012 13:00:00

用時間戳沒有此爭論

3:時間雖然不便於給人看,但是便於給機器運算,便於比較時間差.

舉例: 某張表中,有欄位,存是是發帖時間, 格式是 yyyy-mm-dd hh:ii:ss

我讓你取出24小時內的帖子.

得先根據當前這一瞬間  2012-03-01 09:13:25, 往前移動24小時,計算出24前的日期 ,記為a

然後 pubtime >= a, 是2012-02-28還是02-29, 得考慮平年閏年的問題

很麻煩而用時間戳則沒有此問題

只需要得出當前這一瞬間的時間戳,記為current, 然後 current - 24 * 3600 ,記為b

只需要 pubtime >= b 就可以了.

問:時間戳雖利於計算機來計算,但人眼看起來,還是不直觀啊?

答:有專門的函式,用來把時間戳格式化你想要的格式,date函式

*/echo '從1970-01-01 00:00:00到現在,已經過去',time(),'秒了';

echo '

';$time = time();

echo date('m/d y h:i',$time);

echo '';

/*strtotime,則是把字串形式的時間轉化成時間戳

*/$birth = '1985-05-17';

echo strtotime($birth),'

';// 從當前時間,退回1天的時間戳

echo strtotime('-1 day'),'

';// 退回到一周前的時間戳

echo strtotime('-1 week'),'

';

冥想第十九天

不能怪自己多心,畢竟出現不舒服的感覺是因為大腦太關切自己的身體了。一點也不想讓它受刺激。今天出來玩了,早上做了體檢。又帶著小妞妞出來打了預防針,後又跟著朋友出來滎陽南嶺玩了,到時有點困,告訴自己要接受,好好接受當下 但不反抗,知道是正常的。坐上車後睡了一會,所有的精力都回來了。當和朋友一起回來的時候...

ACM 第十九天

積性函式o n 線性篩,篩素數,u n 尤拉函式 n n 1 vis 0 vis 1 1,mu 1 1,phi 1 1 2 for rg int i 2 i n i 7else mu k mu i phi k phi i phi prime j 8 9 可以發現,線性篩分為3部分 1.n本身是素數,...

設計模式學習第十九天

命令模式 模式是從 中而來的,就是 的靈活的排列組合,模式不應為了講清的特設環境而迷惑,而要實踐,最好的就是專案,沒有專案之前就是敲 提高沒有捷徑,就是敲 我對命令特設環境的思路 烤肉者儲存乙個命令的引用,主要作用就是執行繼承父類的子類的命令的執行,依靠遍歷服務員過來的集合進行按個執行 服務員類利用...