開端<?php>結尾
弱類型語言 ?定義變量的時候 不需要 聲明 ? 但是 每一個變量前 ? 都必須 ?加$ 符號
儲存文件按 ?統一放到 安裝文件夾下面的 ?WAMP ?下面 ?的WWW ?文件內部 ? (與創的站點統一即可) ??? ?該文件下面不能出現中文
注釋語法: 單行注釋:// ? 多行注釋 /**/
支持的格式:?int ? float ??string ?bool ? ?object
定義變量 :php 里面 的所有變量 都需要 加 '$ ' $a=10 就是 對 a 賦值 一般在定義的時候 就要對他賦值
普通定義: ? $s="張三"
$h="b";
字符串連接: ? ??$b="hellow {$s} nihao"
也可以 $b="hellow nihao".$s 這樣只能 加在 最前面 或最后面
可變 變量 ?$$ ? ? ? : ?echo ?$$h; ? ?---> ? $b 的內容
輸出語法 1.echo 可以輸出字符串 echo $a; ?(輸出變量 a)
2. print 可以輸出變量 和 字符串 print $ a;
echo 可以輸出 多個字符串 ??【 輸出的都是字符串; 整型 默認轉換成字符串來輸出】
$b='sda';
$a='hello';
echo $a,$b; ?或者 ?echo $a,'sda';
print 每次只能輸出一個 字符串【 輸出的都是字符串; 整型 默認轉換成字符串來輸出】
3.var_dump() 輸出 變量的所有信息; var_dump($a) 主要用于 調試 錯誤
4.print_r();專門打印數組的
字符串轉化:
$ a=10; $a=(string)$a; 強制轉化a 的類型 轉化為字符串
settype($a,'string'); 強制轉化a 的類型 轉化為字符串
定義字符串:
$a1='hellow';
$a2="hellow";
$a3=<<
A;
雙引號和單引號 定義的區別
1. 雙引號 內部 可以解析轉義字符 單引號里面 不能解析轉義字符 ? (反斜杠)(如果想要 顯示換行 ?還是用
)
2. php 里面 拼接字符串用 . 不是用+ ;php 雙引號 字符串里面 可以解析變量{} 花括號 來定位 必須加
舉例:
$s="張三"
$h="b";
$b="hellow {$s} nihao"
也可以 $b="hellow nihao".$s 這樣只能 加在 最前面 或最后面
可變 變 量 echo $$h; ---> $b 的內容
常用的 方法 ?函數
empty() ?判斷變量 是否為空 empty($a) ?返回 true ?或false
isset() ???判斷變量是否 定義 isset($a) ??????返回 true ?或false
unset() ??刪除變量的方法 unset($a)
&表示 變量的地址(輸出時 ?只要在輸出語句之前存在& ??先找帶有 &的 變量 ??)
$a=10; ??$b=&$a; ?echo $b; ??--->10
$a=10; ??$b=&$a; ??$a=5 ; ??echo $b; ??---> 5 ??// 根據 地址尋找
嘗試一下 ??$b=$a ; ?是否 同樣效果(結果輸出5[輸出最后賦值的])
錯誤抑制符 @
常見錯誤
Notice ? ? ? ? ? ? ? ? ? ??Warning ? ? ? ? ? ? ? ? ? ??error
$a 未定義 ??如果直接輸出 ?就會報錯 ?Notice ????這樣 ?echo @$a ?就不會報錯
如果 ??不輸出 ?而報錯 ??直接在 ?出錯的位置前面 加@ ?例如 ?@$a+&$b;
函數 ?結尾 不能加分號 ?在 JS 里面也是
PHP ?與js ?語言 ?基本相同 ? 下面 是 ? 區別
循環語句 ?與強類型語言 和 ?js ?里面完全相同 ? 遍歷集合除外
遍歷集合:
PHP 弱類型語言( $v 數組) 中:
foreach($attr as $v)
{
echo $v;
}
JS 弱類型語言( $v 數組) 中:
for (var aa in v)
{
document.write( aa);
}
強類型語言中得 遍歷集合(詳見 C# 整理的博客 )
foreach (int aa in v)
{
console.write( aa);
}
1. ?HTML 語言 ?函數寫在 ?JS 里面 ? 而 ?PHP語言 ?函數可以直接寫在 ?<?php>函數位置> 內部 ? ?詳見下面代碼
全局變量 ?global ? 和局部變量(函數內部的變量)
$x=5;// 全局變量
$y=10;
function myTest()
{
global $x,$y; // 函數內部引用 全局變量 時要注明 global 后面加空格
$y=$x+$y;
}
myTest(); // run function
echo $y; // output the new value for variable $y
?>
函數里面引用全局變量 時注意要注明 全局變量
2.靜態變量static:
當一個函數完成時,它的所有變量通常都會被刪除。然而,有時候您希望某個局部變量不要被刪除。
要做到這一點,請在您第一次聲明變量時使用?static?關鍵字:
function myTest()
{
static $x=0;
echo $x;
$x++;
}
myTest();
echo "
";
myTest();
echo "
";
myTest();
echo "
";
myTest();
echo "
";
myTest();
// 輸出結果 0,1,2,3,4 如果去掉 static 則輸出 全是 0
?>
static 靜態變量
3.PHP 將所有全局變量存儲在一個名為 $GLOBALS[index] 的數組中。?index?保存變量的名稱。這個數組可以在函數內部訪問,也可以直接用來更新全局變量。
$x=5;
$y=10;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
myTest();
echo $y;
?>// 輸出 15
數組
PHP 語言與JS 完全相同的地方 ?如下
運算符號 ( 和JS 弱類型語言一樣) + - * / ?????+= ???-= ???.=(拼接字符串)
注意: $a=10; $b=11; ?echo $a++; --->輸出 10;
比較運算符:(和JS一樣) >< ==
邏輯運算符 (和JS 一樣): ??&& ?|| ?!
$a=true; ?var_dump(!$a); ?---> 輸出 ?false
同樣支持 ?and 和 or ???對應上面的 ??&& 和 ?||
三元運算符(和JS 一樣 ) ?echo a>b?"對":"錯" ;
三步運算符 ?常用在 判斷 男女 ???$sex=false; echo $sex=false? “男”:”女”;
swift 學習(二)基礎知識 (函數,閉包,ARC,柯里化,反射)
函數 func x(a:Int, b:Int) ?{} ? func x(a:Int, b:Int) -> Void {} ?func x(a:Int, b:Int) ->(Int,Int ...
python基礎——高階函數
python基礎——高階函數 高階函數英文叫Higher-order function.什么是高階函數?我們以實際代碼為例子,一步一步深入概念. 變量可以指向函數 以Python內置的求絕對值的函數a ...
Swift語法基礎入門三(函數, 閉包)
Swift語法基礎入門三(函數, 閉包) 函數: 函數是用來完成特定任務的獨立的代碼塊.你給一個函數起一個合適的名字,用來標識函數做什么,并且當函數需要執行的時候,這個名字會被用于“調用”函數 格式: ...
python學習第五講,python基礎語法之函數語法,與Import導入模塊.
目錄 python學習第五講,python基礎語法之函數語法,與Import導入模塊. 一丶函數簡介 1.函數語法定義 2.函數的調用 3.函數的文檔注釋 4.函數的參數 5.函數的形參跟實參 6.函 ...
JavaScript基礎知識(函數)
函數的基礎 函數: 把實現相同功能的代碼放到一個函數體中,當想實現這個功能時,直接執行這個函數即可:減少了的冗余:高內聚,低耦合--> 函數的封裝: 函數:引用數據類型: var a = 10; ...
小白學 Python(17):基礎數據類型(函數)(下)
人生苦短,我選Python 前文傳送門 小白學 Python(1):開篇 小白學 Python(2):基礎數據類型(上) 小白學 Python(3):基礎數據類型(下) 小白學 Python(4):變 ...
openresty開發系列14--lua基礎語法3函數
openresty開發系列14--lua基礎語法3函數 一)function (函數) 有名函數: optional_function_scope function function_name( ar ...
python基礎——內置函數
python基礎--內置函數 ?一.內置函數(python3.x) 內置參數詳解官方文檔: https://docs.python.org/3/library/functions.html?highl ...
自學Python之路-Python基礎+模塊+面向對象+函數
自學Python之路-Python基礎+模塊+面向對象+函數 自學Python之路[第一回]:初識Python? ? 1.1?自學Python1.1-簡介? ? 1.2?自學Python1.2-環境的 ...
第二十三節:Java語言基礎-詳細講解函數與數組
函數 函數在Java中稱為方法,在其他語言中可能稱為函數,函數,方法就是定義在類中具有特定功能的程序.函數,在Java中可稱為方法. 函數的格式: 修飾符 返回值類型 函數名(參數類型 參數1, 參數 ...
隨機推薦
Windows Azure Virtual Machine (25) 使用SSH登錄Azure Linux虛擬機
本文介紹內容適合于Azure Global和Azure China 為什么使用SSH登錄Azure Linux虛擬機? 我們 ...
Android xml 格式 隨筆
打包的時候Android xml文件會由字符格式(utf-8編碼)轉換為二進制格式.具體如:http://blog.csdn.net/jiangwei0910410003/article/detail ...
JavaBean基礎轉載
JavaWeb:JavaBean基礎 JavaBean基礎 JavaBean簡介: 1.JavaBean是一種可以重復使用的類,可以沒有用戶界面,主要負責業務數據或者處理事物(數據運算.操作數據庫) ...
BestCoder Round #70 Jam&#39;s math problem(hdu 5615)
Problem Description Jam has a math problem. He just learned factorization. He is trying to factorize ...
Android編程中的實用快捷鍵
作為一個優秀的程序員,不但要能開發出漂亮的軟件,也要能熟練掌握編程的技巧,包括IDE的快捷鍵使用.比如linux 下的VI編輯器,對于不熟練快捷鍵的人來說就是一個噩夢,但一旦你熟練了VI的快捷鍵,VI ...
socket及其相關(續篇)
IO 多路復用 基本概念 IO多路復用是指內核一旦發現進程指定的一個或者多個IO條件準備讀取,它就通知該進程.IO多路復用適用如下場合: (1)當客戶處理多個描述字時(一般是交互式輸入和網絡套接口), ...
python之旅5【第五篇】
裝飾器詳解 函數剛開始不解析內部,只是放進內存 裝飾器是函數,只不過該函數可以具有特殊的含義,裝飾器用來裝飾函數或類,使用裝飾器可以在函數執行前和執行后添加相應操作. 1 下面以一個函數開始,理解下面 ...
LOG EXPLORER ApexSQL Log
http://www.minisoft.cn/ https://www.apexsql.com/sql_tools_log.aspx
expect交互式創建賬號密碼
這個腳本是我在建立samba用戶的時候用到的,一開始我是一步一步的操作,后來嫌麻煩了,就寫了這個腳本,也學習了一下expect. #!/usr/bin/expectset user [lindex $ ...
并發包交換數據Exchanger
/** * * @描述: 用于實現兩個人之間的數據交換,每個人完成一定的事務后想與對方交換數據,第一個先拿出數據的人一直等待 * 直到第二個人拿到數據 到來時,才能彼此交換數據. * @作者: Wnj ...