PHP入門學習筆記之一

2022-10-06 14:00:25 字數 2679 閱讀 9911

1. 基本語法

要在html**中嵌入php指令碼的方法是在<?php ?>中書寫**。向瀏覽器輸出資料採用echo或者print函式。echo可以接受多個引數,print 只能接受乙個。echo的形式是

void echo(string arg1,[,…string argn]);

php語法允許省略括號。 例如,

複製** **如下:

<?php

$my =' my ';

echo 'hello',$my,'world'

?>

將會在瀏覽器上輸出 hello my world

php 還支援乙個和c語言很像的printf函式,例如 printf(『 %d ap',100),將會輸出 100 apples。sprintf的用法和printf一致,不過它不是輸出到瀏覽器,而是返回乙個字串。

2.資料型別和變數

php是弱型別的,乙個變數不需要預先宣告,也不需要指定型別。php中變數是$加上變數名,php的變數是區分大小寫的。 例如上例中的 $my='my'。

php支援的變數型別包括:布林型,整型,浮點型,字串,陣列和物件。前四種很常用,也和其他語言類似,不多做介紹。陣列和物件後文具體介紹。

php中有函式來檢測 物件的型別,它們是 getttype。gettype返回乙個string,它的值可以是array,boolean,double,integer,object,resource,string 和 unknow type. php也支援顯式的型別轉換,語法和c類似。

轉換操作符 轉換為

(array) 陣列

(程式設計客棧bool) (boolean) 布林型

(int) (integer) 整數

(object) 物件

(float),(double),(real) 浮點數

(string) 字串

例如:

複製** **如下:

<?php

$str ='a string';

$num=15;

$numstr='123.3';

echo gettype($str),'

'; echo gettype($num),'

'; echo gettype($numstr),'

'; $numstr=(float)$numstr;

echo gettype($numstr);

?>

輸出結果為:

string

integer

string

double

還有函式可以用來判斷乙個變數是不是某種型別,例如 is_array(),is_bool()等等,用法都類似

3. 函式和變數作用域

php宣告函式的方法很簡單,形式如下:

複製** **如下:

function functionname(parameters)

不需要指定返回型別,括號中也不需要指定變數型別,只要有變數名就可以。例如:

複製** **如下:

<?php

function taxedprice($price,$taxrate)

echo taxedprice(10 0.03);

?>

預設情況下,php是按值傳遞引數的,在函式內改變引數的值並不會改變函式外變數的值,但是php也支援按引用傳遞,語法和c一致,&$paramname,例如,下面乙個經典的例子:

複製** **如下:

<?php

function swap1($x,$y)

function swap2(&$x,&$y)

$a=3;$b=5;

swap1($a,$b);

printf("a is %d, b is %d

",$a,$b);

swap2($a,$b);

printf("a is %d, b is %d

",$a,$b);

?>

輸出結果:

a is 3, b is 5

a is 5, b is 3

php的函式還支援引數的預設值,語法和c也是一樣的。例如:

複製** **如下:

<?php

function taxedprice($price,$taxrate=0.03)

echo taxedprice(100);

?>

下面介紹變數的作用域。php的變數作用域和c很類似,有區域性變數,函式引數,全域性變數,靜態變數4種。區域性變數就是在函式內宣告的變數,函式引數是在函式首部宣告的變數;不在函式中宣告的變數是全域性變數,全域性變數可以在任何地方訪問到,但是和c不同的是,如果在函式中要修改全域性變數的值需要用global關鍵字顯式指定它是全域性變數,否則php就會宣告乙個同名的區域性變數並且覆蓋它。例如:

複製** **如下:

<?php

$taxrate=0.03; //global

function change1()

function change2()

change1();

echo $taxrate,'

'; change2();

echo $taxrate,'

'; ?>

輸出的結果是:

0.03

1.03

PHP學習筆記之一

配置php以及mysql的過程略去,如果在ubuntu下,參考 ubuntu 10.04 installation memo 即可。1.基本語法 要在html 中嵌入php指令碼的方法是在中書寫 向瀏覽器輸出資料採用echo或者print函式。echo可以接受多個引數,print 只能接受乙個。ec...

MySQL學習筆記之一 MySQL入門

一 簡介 mysql是乙個真正的多使用者 多執行緒sql資料庫伺服器。sql 結構化查詢語言 是世界上最流行的和標準化的資料庫語言。mysql是乙個客戶端 伺服器結構的實現,它由乙個伺服器守護程式mysqld和很多不同的客戶程式和庫組成。mysql的普及並不侷限於開放源 團隊內。雖然它在個人計算機上...

MySQL學習筆記之一MySQL入門

本人之前接觸的關係型資料庫主要是oracle和sqlserver,而對於mysql知之甚少,但查閱網上資料發現,mysql與oracle非常相似,所以學起來應該不會很費勁,在總結的時候可能更多的把關注點放在它與oracle的不同之處。一 簡介 mysql是乙個真正的多使用者 多執行緒sql資料庫伺服...