php的概述
目前創(chuàng)新互聯(lián)建站已為成百上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、汪清網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
了解什么是php,php語言有什么優(yōu)勢,php語言有哪些特性,php的發(fā)展趨勢,php應(yīng)用的領(lǐng)域等等問題。
如何學(xué)好php
1.要明確自己的學(xué)習(xí)目標(biāo)和學(xué)習(xí)方向,認(rèn)準(zhǔn)這門語言,按照自己的學(xué)習(xí)方法認(rèn)真學(xué)習(xí)。
2.選擇一個(gè)合適自己的php開發(fā)工具。
3.多讀php方面的書籍,扎實(shí)自己的基礎(chǔ)。
4.了解php的設(shè)計(jì)模式,學(xué)習(xí)一些模式可以更好的把握項(xiàng)目的整體結(jié)構(gòu)。
5.不能急躁,遇到問題要冷靜,多向他人請教。
6.php函數(shù)很多,需要下載一個(gè)php中文手冊和MySQL手冊,方便查詢相關(guān)函數(shù)。
7.也可以看一下教學(xué)視頻,看看他人是如何編程的。
8.要堅(jiān)持不懈,持之以恒。
php的環(huán)境是搭建的和開發(fā)工具
網(wǎng)上有專門的講解php環(huán)境是如何搭建的,這里不詳述了。
開發(fā)工具有Dreamweaver,ZendStudio,EditPlus2,Delphi for PHP等
選擇一款適合自己的使用。
php語言的基礎(chǔ)
1.php的標(biāo)記風(fēng)格
2.php注釋的應(yīng)用
3.php數(shù)據(jù)類型
4.php的常量和變量
5.php的運(yùn)算符
6.php的表達(dá)式
7.php的函數(shù)
8.php的編碼規(guī)范
這些都是php語言的基礎(chǔ),php入門必須要掌握,如果你學(xué)過其他語言,學(xué)起這些來應(yīng)該感覺非常簡單,php語言是很容易上手的。
流程控制語句
像?if語句,switch ..case多重判斷語句,while循環(huán)語句,do... while循環(huán)語句,for循環(huán)語句,foreach循環(huán)語句都是必須要掌握的。
字符串操作
針對字符串的一系列操作,如去除字符串首位空格和特殊字符,轉(zhuǎn)義,還原字符串?dāng)?shù)據(jù),獲取字符串長度,截取字符串,比較字符串,查詢字符串,替換字符串,合成字符串這些,都需要掌握。
正則表達(dá)式
了解什么是正則表達(dá)式,掌握正則表達(dá)式的語法規(guī)則,像行定位符,單詞定界符,選擇字符,排除字符等等都必須要掌握。
php的數(shù)組
了解什么是數(shù)組,掌握聲明數(shù)組的方法,了解數(shù)組的類型,能夠輸出數(shù)組,遍歷數(shù)組,以及熟練運(yùn)用針對數(shù)組的一系列操作。
php與Web頁面的交互
學(xué)會創(chuàng)建表單,在普通的Web頁中插入表單,掌握獲取表單數(shù)據(jù)的兩種方法,POST()方法和GET()方法,php參數(shù)傳遞的方法等等。
php與JavaScript交互
了解什么是JavaScript,JavaScript語言基礎(chǔ)需要掌握,如JavaScript流程控制語句,JavaScript事件,在php中調(diào)用JavaScript腳本等。
此外,還有核心技術(shù)需要掌握,Cookie和Session,圖形圖像處理技術(shù),文件系統(tǒng),加密技術(shù),面向?qū)ο?,MySQL數(shù)據(jù)庫等等都需要掌握。
試編寫代碼如下:
?php
//從數(shù)據(jù)庫根據(jù)?id?獲取顏色
function?getColor($db,?$id)
{
if?($result?=?$db-query("SELECT?*?FROM?color?where?id='"?.?$id?.?"'"))
{
$row?=?$result-fetch_assoc();
return?$row['color'];
}
return?'#000000';
}
$mysqli?=?new?mysqli("localhost",?"test",?"test",?"room");
if?($mysqli-connect_error)?{
printf("數(shù)據(jù)庫連接錯(cuò)誤:?%s\n",?mysqli_connect_error());
exit();
}
?
table?border="1"?cellspacing="0"
tr
td?bgcolor="?php?echo?getColor($mysqli,'1')?"1/td
/tr
tr
td?bgcolor="?php?echo?getColor($mysqli,'2')?"2/td
/tr
tr
td?bgcolor="?php?echo?getColor($mysqli,'3')?"3/td
/tr
/table
?php
$mysqli-close();
?
一般是用Foreach提取,例如:
$data?=?array('字段1'=1,'字段2'=2,'字段3'=3,'字段4'=5);//數(shù)組數(shù)據(jù)
foreach($data?as?$key=$vo){//$key是字段名,$vo?為值
echo?$key."=".$vo."br/";
}
首先學(xué)會搭建php服務(wù)器,如apache;
1.然后學(xué)習(xí)php語法并在服務(wù)器上做練習(xí);
2.然會學(xué)習(xí)數(shù)據(jù)庫以及php數(shù)據(jù)庫操作如mysql;
3.做個(gè)小demo比如博客、論壇;
4.學(xué)習(xí)一種框架的使用如codeigniter,并閱讀其源代碼,提升自己;
看完自己想一遍實(shí)現(xiàn)過程,自己再關(guān)上書寫一遍;差不多就寫個(gè)留言板之類的簡單程序。多上點(diǎn)專業(yè)論壇,多看點(diǎn)案例,自己多寫點(diǎn),PHP實(shí)際上入門時(shí)不算難的。
方法1、最常見的方法是:$_POST['fieldname'];
說明:只能接收Content-Type: application/x-www-form-urlencoded提交的數(shù)據(jù)
解釋:也就是表單POST過來的數(shù)據(jù)
方法2、file_get_contents("php://input");
說明:
允許讀取 POST 的原始數(shù)據(jù)。
和 $HTTP_RAW_POST_DATA 比起來,它給內(nèi)存帶來的壓力較小,并且不需要任何特殊的 php.ini 設(shè)置。
php://input 不能用于 enctype="multipart/form-data"。
解釋:
對于未指定 Content-Type 的POST數(shù)據(jù),則可以使用file_get_contents(“php://input”);來獲取原始數(shù)據(jù)。
事實(shí)上,用PHP接收POST的任何數(shù)據(jù)都可以使用本方法。而不用考慮Content-Type,包括二進(jìn)制文件流也可以。
所以用方法二是最保險(xiǎn)的方法
方法3、$GLOBALS['HTTP_RAW_POST_DATA'];
說明:
總是產(chǎn)生 $HTTP_RAW_POST_DATA 變量包含有原始的 POST 數(shù)據(jù)。
此變量僅在碰到未識別 MIME 類型的數(shù)據(jù)時(shí)產(chǎn)生。
$HTTP_RAW_POST_DATA 對于 enctype="multipart/form-data" 表單數(shù)據(jù)不可用
如果post過來的數(shù)據(jù)不是PHP能夠識別的,可以用 $GLOBALS['HTTP_RAW_POST_DATA']來接收,
比如 text/xml 或者 soap 等等
解釋:
$GLOBALS['HTTP_RAW_POST_DATA']存放的是POST過來的原始數(shù)據(jù)。
$_POST或$_REQUEST存放的是 PHP以key=value的形式格式化以后的數(shù)據(jù)。
但$GLOBALS['HTTP_RAW_POST_DATA']中是否保存POST過來的數(shù)據(jù)取決于centent-Type的設(shè)置,即POST數(shù)據(jù)時(shí) 必須顯式示指明Content-Type: application/x-www-form-urlencoded,POST的數(shù)據(jù)才會存放到 $GLOBALS['HTTP_RAW_POST_DATA']中