還在看教程視頻的初級(jí)階段

一禽笑、php的歷史

1994年 Rasmus Lerdorf用Perl語(yǔ)言的創(chuàng)造,后用C重寫(xiě)
1995年 以Personal Home Page Tools(PHP Tools)為名發(fā)布PHP1和PHP2
1996年 有15000個(gè)網(wǎng)站使用PHP
1997年 Zeev Suraski 和Andi Gutmans重寫(xiě)PHP解釋器并改稱(chēng)
1998年 正式發(fā)布PHP3
1999年 成立Zend Technology公司
2000年 發(fā)布PHP4
2004年 發(fā)布PHP5

二测砂、PHP的優(yōu)點(diǎn)

1即供、語(yǔ)法簡(jiǎn)單
2感局、學(xué)習(xí)成本低
3、開(kāi)發(fā)效率高
4琐凭、跨平臺(tái)
5芽隆、開(kāi)發(fā)部署方便
6、開(kāi)源框架豐富(ThinkPHP)
7淘正、開(kāi)源CMS(內(nèi)容管理系統(tǒng))系統(tǒng)非常豐富(Joomla摆马、Wordpress【很強(qiáng)大二次開(kāi)發(fā)容易】)
8、開(kāi)源網(wǎng)站系統(tǒng)非常豐富(DiscuszX【一系列網(wǎng)站開(kāi)源系統(tǒng)(被騰訊收購(gòu))】)

三鸿吆、PHP名詞解釋

1囤采、Linux
2、Cygwin(win下模擬Linux環(huán)境)
3惩淳、Apache httpd(外部服務(wù)器)
4蕉毯、Nginx(同上,比上更快但是沒(méi)有上穩(wěn)定插件也沒(méi)有上豐富)
5思犁、MySQL(數(shù)據(jù)庫(kù))
6代虾、XAMPP(集成爆袍,快速部署開(kāi)發(fā)環(huán)境)
7华糖、Eclipse PDT(開(kāi)發(fā)環(huán)境)
8、ZendStudio(開(kāi)發(fā)環(huán)境)
9再悼、PhpStorm(將使用的開(kāi)發(fā)環(huán)境)
10学辱、FTP(傳輸協(xié)議【計(jì)算機(jī)導(dǎo)論講過(guò)的】)
11乘瓤、SSH(命令)
12环形、SCP(命令,上傳和下載文件)

四衙傀、開(kāi)發(fā)PHP所需要的環(huán)境

集成開(kāi)發(fā)環(huán)境抬吟,PHPStorm(使用JAVA開(kāi)發(fā),JAVA虛擬機(jī)運(yùn)行统抬,需要較高的硬件基礎(chǔ))火本。
軟件環(huán)境 XAMPP PhpStorm Firefox(chorme)。

五聪建、將PHP部署到服務(wù)器上

ssh root@主機(jī)地址(或者ip地址)【應(yīng)急修改bug時(shí)】

上傳本地文件到服務(wù)器:
phpStorm內(nèi)置終端:ls
傳一個(gè)密鑰文件钙畔,指定一個(gè)端口,服務(wù)器目錄
上傳多個(gè)文件:
scp -i `/certs/demos_sever_key -p 2203 -r m(傳m內(nèi)所有東西 -r) root@119.254.110.164:/opt/lampp/htdocs/
將PHP部署到SAE【新浪提供的app引擎】上:svn
先安裝:sudo apt -get install subversion
svn co 地址 (也可以自行指明目錄)
提交代碼:/opt/lampp/htdocs/myphpdomains svn ci
將PHP部署到BAE【百度提供的app引擎】上
方法同上

六妆偏、PHP語(yǔ)法基礎(chǔ)

1刃鳄、標(biāo)記符

<?php
?>[可不帶]
例子:(使用html插入php)
<code><!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>PHP tag</title>
</head>
<body>
Hello HTML

<?php
echo 'HELLO PHP';
?>
</body>
</html></code>

2盅弛、常量與變量

*如何聲明變量
$a = 10钱骂;
echo $a;
*如何聲明常量
(PHP5中可用const)
const THE_VALUE = 100;
echo THE_VALUE ;
(之前版本采用define)
define('THE_VALUE',200);
echo THE_VALUE;
【常量變量區(qū)別同c艸】
【const和define有些許區(qū)別】

3挪鹏、函數(shù)

<code><?php
function traceHelloPHP()
{
echo 'HELLO PHP
'
echo 'hello Luer
'
}
traceHelloPHP();</code>
【or】
<code>$func = 'traceHelloPHP';
$func();</code>
函數(shù)傳入?yún)?shù)
<code>function sayHelloTo($name)
{
echo 'Hello'.$name.'
';
}
sayHelloTo('ZhangSan');
sayHelloTo('LiSi');
function traceNum($a,$b)
{
echo 'a='.$a.',b='.$b.'
';
}
traceNum(2,3);</code>
【or】
<code>function traceNum($a,$b)
{
echo"a= $a,b=$b";
}
traceNum(2,3);</code>
帶返回值的函數(shù)
<code>function add($a,$b){
return $a+$b;
}
echo add(10,2).'
';</code>

4见秽、流程控制

<code>function getlevel($score){
if($score>90){
return '優(yōu)秀';
}elseif($score>80){
return '良好';
}elseif($score>70){
return '好';
}elseif($score>60){
return '可以';
}else{
return '差'讨盒;
}
echo getlevel(91);</code>
【若出現(xiàn)亂碼解取,在服務(wù)器端指明編碼方式(html)】
【好像和c艸沒(méi)什么區(qū)別】
<code>switch($score/10)
{
case 10:
case 9:
return '優(yōu)秀';
case 8:
return '良好';
case 7:
return '好';
case 6:
return '可以';
default:
return '差';
}</code>
【不加break則跳出方法,加break則跳出switch case 語(yǔ)句(繼續(xù)向下執(zhí)行)】
【好像和c艸也沒(méi)什么區(qū)別】
【若輸入85則結(jié)果為差返顺,為蝦米呢:和c艸不一樣禀苦,這里沒(méi)有轉(zhuǎn)整形啊】
<code>switch(intval($score/10))
{
case 10:
case 9:
return '優(yōu)秀';
case 8:
return '良好';
case 7:
return '好';
case 6:
return '可以';
default:
return '差';
}</code>
【使用intval進(jìn)行類(lèi)型強(qiáng)轉(zhuǎn)】

5、循環(huán)

<code><?php
for($i=0;$i<100;$i++)
{
echo 'Hello'.$i.'
';
}
$i=0
while($i<100)
{
echo 'Hello'.$i.'
';
$i++
}
$i=0;
do
{
echo 'Hello'.$i.'
';
$i++;
}while($i<100);
for($i=0;$i<100;$i++)
{
echo 'Hello'.$i.'
';
if($i==20) break;
}
for($i=0;$i<100;$i++)
{
echo 'Hello'.$i.'
';
if($i==20) continue;
echo 'run here'.$i.'
';
}</code>
【和c艸沒(méi)什么區(qū)別】

6遂鹊、php邏輯運(yùn)算

<code>function treaceNum()
{
for($i=0;$i<=100;$i++)
{
if($i%2==0)
{
echo $i.'
';
}
}
}</code>
【無(wú)非是且&&和或||非振乏!=】
【懶得記了,因?yàn)楹蚦艸真的沒(méi)有什么區(qū)別】

七秉扑、php常用功能

1慧邮、php字符串

<code>$str = 'Hello PHP';
echo $str;
echo strpos($str.'o');//查找字符所在字符串位置;
echo strpos($str.'ph');//查找子字符串梭子字符串位置;
$str = substr($str,2,3);//字符串截取,從2開(kāi)始舟陆,截取3個(gè)字符;
echo $str;//不傳長(zhǎng)度的話(huà)误澳,會(huì)一直截取到末尾;
result = str_split($str,2);
print_r($result);//分割字符串(數(shù)組要用print_r)指定分割長(zhǎng)度。
$str='HELLO PHP JAVA C# C++';
$str1 = substr($str,2);
echo $str1;
$result = explode(' ',$str);
print_r($result);//以空格分割字符數(shù)組秦躯。
$num=100;
$str2 = $str.'
objective-C '.$num;
echo $str2//字符串的連接忆谓;
$str2 = "$str
objective-C $num";字符串內(nèi)直接放入變量;</code>
【啪啪啪踱承,打臉了倡缠,和c艸的區(qū)別體現(xiàn)出來(lái)了】

2米母、php數(shù)組

<code>$arr = arry();
$arr[0] = 'Hello';
$arr[1] = 'World';
$arr[3] = '2';
$arr[4] = '3.14';</code>
用for循環(huán)來(lái)給數(shù)組賦值,省略了毡琉,懶铁瞒。
然后發(fā)現(xiàn)了不一樣的地方,我還是寫(xiě)一些桅滋。
<code>for($i=0;$i<100;$i++)
{
array_push($arr,'Item'.$i);
}
$print_r($arr);</code>

【在這里數(shù)組的聲明使用一個(gè)函數(shù)慧耍,而且不需要指明長(zhǎng)度,方便了不少丐谋,數(shù)組還可以使用字符來(lái)存儲(chǔ)數(shù)據(jù)】
PHP手冊(cè)查詢(xún)地址 php.net
$arr=arry('h'=>'Hello','w'=>'world')//數(shù)組的初始化=>清新脫俗芍碧,挺直觀嘛。
print_r($arr);
echo $arr['h']; //訪問(wèn)數(shù)組的成員号俐。

3泌豆、include與require

如何加載php文件;
file1::
<code><?php
function sayhello()
{
echo 'hello php';
}</code>
file2::
<code><?php
require 'file1.php';
sayhello();</code>
或者include 'file1.php'【有點(diǎn)像頭文件包含】吏饿;
【區(qū)別】
require:是一種依賴(lài)踪危,查找不到會(huì)提示錯(cuò)誤
include:是一種包含,僅提示警告(可以不顯示)猪落。

lib::
<code><?php
function sayhello(){
echo "hello php";
}
echo 'this is a lib file';</code>

index::
<code><?php
require 'lib.php';
require 'lib.php';</code>
【會(huì)提示錯(cuò)誤贞远,方法重復(fù)定義了兩次】
require 每次引用都會(huì)執(zhí)行一次
require_once 同一個(gè)文件只執(zhí)行一次;


三笨忌、如何聲明PHP的類(lèi)

1蓝仲、
<code>
file1::
<?php
class hello{
public function sayHello()
{echo 'hello';}
}
class desktop{
public function work()
{echo 'work';}
}
file2::
<?pho
require_once 'file1.php'
$s=new hello();
$h=new desktop;
$h->work();</code>

四、常用庫(kù)函數(shù)

1官疲、時(shí)間和日期

<code><?php
//echo time();輸出時(shí)間戳
date_default_timezone_set('Asia/Shanghai');
echo date('Y-m-d H:i:s',time());//f2顯示幫助文檔</code>

2袱结、JSON格式數(shù)據(jù)的操作

[1,2,5,7,8,"HELLO",[6,7,8],{"h":"hello"}]
{"h":"hello","w":"world",[1,2,3]}
數(shù)組中可以存放對(duì)象,對(duì)象中可以存放數(shù)組
$arr = array(1,2,5,8,"hello",array('h'=>'hello','name'=>'lu'))
echo json_encode($arr)


$obj = array('h'=>'hello','w'=>'world',array(3,2,1));
echo json_encode($obj);


decode
$jsonstr = '{"h":"hello","w":"world","8":"3,2,1"}';
$obj = json_decode($jsonstr);
//print_r($obj);
//訪問(wèn)h
echo $obj->h;

3途凫、文件操作

<code>//write data
$f = @fopen('data','w');//忽略警告
if($f)
{
fwrite($f,'hello php')
fclose($f);
}
else
{
echo '創(chuàng)建文件失敗'
}
fwrite($f,'hello php');
fclose($f);</code>
<code>//read data
$f = @fopen('data','r');
$content = fgets($f);//只讀取一行
$fclose($f);
echo $content//get content
echo file_get_contents('data');</code>

4垢夹、生成圖片

<code>$ing = imagecreat(400,200);
imagecolorallocate($img,225,225,225);
imageellipse($img,200,200,50,50,imagecolorallocate($img,255,0,0));
header('content-type: image/png')
imagepng($img);</code>

5、圖片打水印實(shí)例

$img = imagecreatfromipeg('name.jpg');
imagestring($Img,2,5,5,'renjialu.com',imagecolorallocate($img,0,255,0))
header('Content-type:image/jpeg')
imagejpeg($img);

五颖榜、html表單的創(chuàng)建與提交

1棚饵、表單與php

<code>
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="sever.php">
名字:<input name="name" type="text">

愛(ài)好:<input name="hobby" type="text">

<input type="submit"value="提交">
</form>
</body>
</html>
</code>

2、處理GET請(qǐng)求

//前后端通信
<code>
<body>
<form action="hello.php"method="get">
<input name="name" type="text">
<input type="submit"value="提交">
</form>
</body>
</code>
//服務(wù)器端
<?php
if(isset($_GET['name']&&$_GET['name']))
{echo 'Hello',$_GET['name'];}
else
{echo '請(qǐng)輸入名字'}

3掩完、處理post請(qǐng)求

//add
<code><form action="add.php"method="post">
a:<input type="text" name="a">

b:<input type="text" name="b">

<input type="submit"value="提交">
</form></code>
//服務(wù)器端
<code><?php
if($_POST['a']&&$_POST['b'])
{echo $_POST['a']+$_POST['b'];}
else
{echo '請(qǐng)輸入?yún)?shù)';}</code>

4噪漾、上傳文件

<code><form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
<input type="submit" value="提交"></code>
//服務(wù)器端
<code>
<?php
$file = $_FILES['file'];
$fileName = $file['name'];
move_upload_file($file['temp_name'],$fileName);

echo "
"
?>
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市且蓬,隨后出現(xiàn)的幾起案子欣硼,更是在濱河造成了極大的恐慌,老刑警劉巖恶阴,帶你破解...
    沈念sama閱讀 216,591評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诈胜,死亡現(xiàn)場(chǎng)離奇詭異豹障,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)焦匈,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)血公,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人缓熟,你說(shuō)我怎么就攤上這事累魔。” “怎么了够滑?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,823評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵垦写,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我彰触,道長(zhǎng)梯投,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,204評(píng)論 1 292
  • 正文 為了忘掉前任况毅,我火速辦了婚禮分蓖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘俭茧。我一直安慰自己咆疗,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布母债。 她就那樣靜靜地躺著,像睡著了一般尝抖。 火紅的嫁衣襯著肌膚如雪毡们。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,190評(píng)論 1 299
  • 那天昧辽,我揣著相機(jī)與錄音衙熔,去河邊找鬼。 笑死搅荞,一個(gè)胖子當(dāng)著我的面吹牛红氯,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播咕痛,決...
    沈念sama閱讀 40,078評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼痢甘,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了茉贡?” 一聲冷哼從身側(cè)響起塞栅,我...
    開(kāi)封第一講書(shū)人閱讀 38,923評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腔丧,沒(méi)想到半個(gè)月后放椰,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體作烟,經(jīng)...
    沈念sama閱讀 45,334評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評(píng)論 2 333
  • 正文 我和宋清朗相戀三年砾医,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拿撩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,727評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡如蚜,死狀恐怖绷雏,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情怖亭,我是刑警寧澤涎显,帶...
    沈念sama閱讀 35,428評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站兴猩,受9級(jí)特大地震影響期吓,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜倾芝,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評(píng)論 3 326
  • 文/蒙蒙 一讨勤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧晨另,春花似錦潭千、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,672評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至路翻,卻和暖如春狈癞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背茂契。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,826評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工蝶桶, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人掉冶。 一個(gè)月前我還...
    沈念sama閱讀 47,734評(píng)論 2 368
  • 正文 我出身青樓真竖,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親厌小。 傳聞我的和親對(duì)象是個(gè)殘疾皇子恢共,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容