PHP基礎(chǔ)

Hello World##

<!DOCTYPE html>
<html>
<body>
<h1>My first PHP page</h1>
<?phpecho "Hello World!";?>
</body>
</html>

在線運(yùn)行
PHP 中的每個(gè)代碼行都必須以分號結(jié)束储狭。分號是一種分隔符淌喻,用于把指令集區(qū)分開來褥伴。

變量##

<?php
$x=22;
$y=33;
$z=$x+$y;
echo $z;

在線運(yùn)行
PHP 變量規(guī)則:

  • 變量以 $ 符號開始蟹地,后面跟著變量的名稱
  • 變量名必須以字母或者下劃線字符開始
  • 變量名只能包含字母數(shù)字字符以及下劃線(A-z挫剑、0-9 和 _ )
  • 變量名不能包含空格
  • 變量名是區(qū)分大小寫的($y 和 $Y 是兩個(gè)不同的變量)

當(dāng)賦一個(gè)文本值給變量時(shí),在文本值兩側(cè)加上引號.

<?php
$z="Hello world!";
echo $z;

在線運(yùn)行
不必向 PHP 聲明該變量的數(shù)據(jù)類型漓滔。
PHP 會根據(jù)變量的值编饺,自動把變量轉(zhuǎn)換為正確的數(shù)據(jù)類型乖篷。
在強(qiáng)類型的編程語言中响驴,我們必須在使用變量前先聲明(定義)變量的類型和名稱。PHP是一門弱類型語言.

PHP 有四種不同的變量作用域:

  • local
  • global
  • static
  • parameter
    在所有函數(shù)外部定義的變量撕蔼,擁有全局作用域豁鲤。除了函數(shù)外,全局變量可以被腳本中的任何部分訪問鲸沮,要在一個(gè)函數(shù)中訪問一個(gè)全局變量琳骡,需要使用 global 關(guān)鍵字。
    在 PHP 函數(shù)內(nèi)部聲明的變量是
    局部變量**讼溺,僅能在函數(shù)內(nèi)部訪問:
<?php
$x=5; // 全局變量
function myTest(){
    $y=10; // 局部變量
    echo "測試函數(shù)內(nèi)變量:";
   // print_r($x);這個(gè)$x是打印不出來的,如果想要打印出來,需要使用global.
    print_r($y);
}
myTest();
echo "測試函數(shù)外變量:";
print_r($x);
//print_r($y);

在線運(yùn)行
PHP 將所有全局變量存儲在一個(gè)名為 $GLOBALS[index] 的數(shù)組中楣号。index保存變量的名稱。這個(gè)數(shù)組可以在函數(shù)內(nèi)部訪問怒坯,也可以直接用來更新全局變量炫狱。

<?php
$x=55;
$y=10;
function myTest(){ 
   $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y;

在線運(yùn)行
當(dāng)一個(gè)函數(shù)完成時(shí),它的所有變量通常都會被刪除剔猿。然而视译,有時(shí)候您希望某個(gè)局部變量不要被刪除。
要做到這一點(diǎn)归敬,請?jiān)谀谝淮温暶髯兞繒r(shí)使用static關(guān)鍵字:

<?php
function myTest(){
    static $x=0;
    echo $x;
    $x++;
}
myTest();
myTest();
myTest();
myTest();

在線運(yùn)行

PHP echo 和 print 語句##

echo 和 print區(qū)別:
echo - 可以輸出一個(gè)或多個(gè)字符串
print - 只允許輸出一個(gè)字符串酷含,返回值總為 1

提示:echo 輸出的速度比 print 快, echo 沒有返回值汪茧,print有返回值1椅亚。

<?php
echo "<h2>PHP is fun 1!</h2>";
echo "Hello world!<br>";
echo "I'm about to learn PHP!<br>";
echo "This", " string", " was", " made", " with multiple parameters.";
echo "<br>";
echo '*******************************';
print "<h2>PHP is fun 2!</h2>";
print "Hello world!<br>";
print "I'm about to learn PHP!";
//print "This", " string", " was", " made", " with multiple parameters.";  會出錯(cuò)

在線運(yùn)行

<?php
$txt1="Learn   PHP";
$txt2="w3cschool.cc";
$cars=array("Volvo","BMW","Toyota");
print $txt1;
print "<br>";
print "Study PHP at $txt2";
print "My car is a {$cars[0]}";

在線運(yùn)行

php數(shù)據(jù)類型##

  • String(字符串),
  • Integer(整型),
  • Float(浮點(diǎn)型),
  • Boolean(布爾型),
  • Array(數(shù)組),
  • Object(對象),
  • NULL(空值)。

設(shè)置常量舱污,使用 define() 函數(shù)呀舔,函數(shù)語法如下

bool define ( string $name , mixed $value [, bool $case_insensitive = false ] )

創(chuàng)建一個(gè)區(qū)分大小寫的常量##

常量在定義后,默認(rèn)是全局變量

<?php
echo "區(qū)分大小寫<br>";
define("GREETING", "歡迎訪問 baidu.com");
echo GREETING;    // 輸出 "歡迎訪問 baidu.com"
echo '<br>';echo "greeting";   // 輸出 "greeting"
echo "<br>不區(qū)分大小寫<br>";
define("GREETING", "歡迎訪問 baidu.com", true);
echo greeting;  // 輸出 "歡迎訪問 baidu.com"

在線運(yùn)行

PHP 并置運(yùn)算符##

在 PHP 中慌闭,只有一個(gè)字符串運(yùn)算符别威。
并置運(yùn)算符** (.) **用于把兩個(gè)字符串值連接起來躯舔。

<?php
$txt1="Hello world!";
$txt2="Today a nice day!";
echo $txt1 . " " . $txt2;

在線運(yùn)行

PHP strlen() 函數(shù)##

有時(shí)知道字符串值的長度是很有用的。
strlen() 函數(shù)返回字符串的長度(字符數(shù))省古。

<?php
echostrlen("Helloworld!");
?>

在線運(yùn)行

PHP strpos() 函數(shù)##

strpos() 函數(shù)用于在字符串內(nèi)查找一個(gè)字符或一段指定的文本粥庄。
如果在字符串中找到匹配,該函數(shù)會返回第一個(gè)匹配的字符位置豺妓。如果未找到匹配惜互,則返回 FALSE。

<?php
echostrpos("Helloworld!","world");
?>

在線運(yùn)行

PHP運(yùn)算符##

在 PHP 中琳拭,賦值運(yùn)算符 = 用于給變量賦值训堆。
在 PHP 中,算術(shù)運(yùn)算符 + 用于把值加在一起白嘁。

<?php
$x=10;
$y=6;
echo "<br> +  ";
echo ($x + $y); // 輸出16
echo "<br> -  ";
echo ($x - $y); // 輸出4
echo "<br> *  ";
echo ($x * $y); // 輸出60
echo "<br> /  ";
echo ($x / $y); // 輸出1.6666666666667
echo "<br> %  ";
echo ($x % $y); // 輸出4

在線運(yùn)行

PHP7+ 版本新增整除運(yùn)算符intdiv(),###

<?php
var_dump(intdiv(10, 3));
?>

在線運(yùn)行

PHP 邏輯運(yùn)算符

運(yùn)算符 名稱 描述 實(shí)例
x and y 如果 x 和 y 都為 true坑鱼,則返回 true x=6y=3(x < 10 and y > 1返回 true
x or y 如果 x 和 y 至少有一個(gè)為 true,則返回 true x=6y=3(x==6 or y==5) 返回 true
x xor y 異或 如果 x 和 y 有且僅有一個(gè)為 true絮缅,則返回 true x=6y=3(x==6 xor y==3) 返回 false
x && y 如果 x 和 y 都為 true鲁沥,則返回 true x=6y=3(x < 10 && y > 1) 返回 true
x II y 如果 x 和 y 至少有一個(gè)為 true,則返回 true x=6y=3(x==5 II y==5) 返回 false
! x 如果 x 不為 true耕魄,則返回 true x=6y=3!(x==y) 返回 true

PHP 數(shù)組運(yùn)算符##

運(yùn)算符 名稱 描述
x + y 集合 x 和 y 的集合
x == y 相等 如果 x 和 y 具有相同的鍵/值對画恰,則返回 true
x === y 恒等 如果 x 和 y 具有相同的鍵/值對,且順序相同類型相同吸奴,則返回 true
x != y 不相等 如果 x 不等于 y允扇,則返回 true
x <> y 不相等 如果 x 不等于 y,則返回 true
x !== y 不恒等 如果 x 不等于 y则奥,則返回 true
<?php
$x = array("a" => "red", "b" => "green");
$y = array("c" => "blue", "d" => "yellow");
$z = $x + $y; // $x 和 $y 數(shù)組合并
var_dump($z);
var_dump($x == $y);
var_dump($x === $y);
var_dump($x != $y);
var_dump($x <> $y);
var_dump($x !== $y);

在線運(yùn)行

三元運(yùn)算符##

另一個(gè)條件運(yùn)算符是"?:"(或三元)運(yùn)算符 考润。

(expr1) ? (expr2) : (expr3) 

對 expr1 求值為 TRUE 時(shí)的值為 expr2,在 expr1 求值為 FALSE 時(shí)的值為 expr3逞度。自 PHP 5.3 起额划,可以省略三元運(yùn)算符中間那部分。表達(dá)式 expr1 ?: expr3 在 expr1 求值為 TRUE 時(shí)返回 expr1档泽,否則返回 expr3俊戳。


<?php
$test = 'Today is a nice day!';
//$test = '';
// 普通寫法
$username = isset($test) ? $test : 'nobody1';
echo $username, PHP_EOL;
//PHP_EOL 換行
// PHP 5.3+ 版本寫法
$username = $test ?: 'nobody2';
echo $username, PHP_EOL;

在線運(yùn)行
在 PHP7+ 版本多了一個(gè) NULL 合并運(yùn)算符,

<?php
// 如果 $_GET['user'] 不存在返回 'nobody'馆匿,否則返回 $_GET['user'] 的值
$username = $_GET['user'] ?? 'nobody';// 類似的三元運(yùn)算符
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
?>

if else##

  • if 語句 - 在條件成立時(shí)執(zhí)行代碼
  • if...else 語句 - 在條件成立時(shí)執(zhí)行一塊代碼抑胎,條件不成立時(shí)執(zhí)行另一塊代碼
  • if...else if....else 語句 - 在若干條件之一成立時(shí)執(zhí)行一個(gè)代碼塊
  • switch 語句 - 在若干條件之一成立時(shí)執(zhí)行一個(gè)代碼塊

switch##

<?php

/**
 * Created by Zoe.
 * User: Administrator
 * Date: 2017/1/23
 * Time: 9:10
 */
$favcolor="red";
switch ($favcolor)
{
    case "red":
        echo "你喜歡的顏色是紅色!";
        break;
    case "blue":
        echo "你喜歡的顏色是藍(lán)色!";
        break;
    case "green":
        echo "你喜歡的顏色是綠色!";
        break;
    default:
        echo "你喜歡的顏色不是 紅, 藍(lán), 或綠色!";
}

php數(shù)組##

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市渐北,隨后出現(xiàn)的幾起案子阿逃,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件恃锉,死亡現(xiàn)場離奇詭異搀菩,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)破托,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門肪跋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人土砂,你說我怎么就攤上這事州既。” “怎么了萝映?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵吴叶,是天一觀的道長。 經(jīng)常有香客問我序臂,道長蚌卤,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任贸宏,我火速辦了婚禮造寝,結(jié)果婚禮上磕洪,老公的妹妹穿的比我還像新娘吭练。我一直安慰自己,他們只是感情好析显,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布鲫咽。 她就那樣靜靜地躺著,像睡著了一般谷异。 火紅的嫁衣襯著肌膚如雪分尸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天歹嘹,我揣著相機(jī)與錄音箩绍,去河邊找鬼。 笑死尺上,一個(gè)胖子當(dāng)著我的面吹牛材蛛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播怎抛,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼卑吭,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了马绝?” 一聲冷哼從身側(cè)響起豆赏,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后掷邦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體白胀,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年抚岗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了纹笼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,773評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡苟跪,死狀恐怖廷痘,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情件已,我是刑警寧澤笋额,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站篷扩,受9級特大地震影響兄猩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鉴未,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一枢冤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧铜秆,春花似錦淹真、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至啸驯,卻和暖如春客扎,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背罚斗。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工徙鱼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人针姿。 一個(gè)月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓袱吆,卻偏偏與公主長得像,于是被迫代替她去往敵國和親搓幌。 傳聞我的和親對象是個(gè)殘疾皇子杆故,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評論 2 354

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

  • PHP 簡介 和 開發(fā)環(huán)境配置 PHP(Hypertext Preprocessor)是全球最流行的Web程序開發(fā)...
    流云012閱讀 579評論 1 2
  • [if !supportLists]1.[endif]PHP基礎(chǔ)(變量的八種類型、empty和isset溉愁、null...
    4e855d444c9f閱讀 578評論 0 0
  • 軟件體系結(jié)構(gòu) 1.單主機(jī)結(jié)構(gòu) 界面顯示处铛、業(yè)務(wù)邏輯和數(shù)據(jù)存取功能都是在用戶主機(jī)上實(shí)現(xiàn)饲趋,需要下載軟件并安裝,易盜版 2...
    sidney_c閱讀 762評論 2 3
  • 一撤蟆、php可以做什么 php是一種可以在服務(wù)器端運(yùn)行的編程語言奕塑,可以運(yùn)行在Web服務(wù)器端。 php是一門后臺編程語...
    空谷悠閱讀 3,096評論 4 97
  • 1.變量 變量名的命名規(guī)范需要“$”進(jìn)行標(biāo)識變量名必須以字母或下劃線 “_”開頭變量名只能由字母家肯、數(shù)字龄砰、以及“_”...
    蘇宇lovecc閱讀 1,288評論 1 8