PHP和javascript區別
阿新 • • 發佈:2020-08-02
PHP和javascript區別
1.使用範圍
PHP既可以寫服務端語言,又可以寫在HTML頁面中,寫前端頁面和互動
javascript只能用來書寫前端頁面和互動。
2.語法不同
- js中用點來連線下一級
var obj={a:1,b:2};
console.log(obj.a) //a
- PHP中用 -> 來連線下一級
class Box{ var $a=10; function Box($_a){ $this->a+=$_a; } function play(){ echo $this->a; } } $b=new Box(5); $b->play(); //執行BOX下的play方法
- . 符號在PHP中是用來連線字串的,相當於js中的+符號
- js定義變數用var和let ,PHP中用$(只要使用變數,前面必須加$)
- js變數名的定義是駝峰式命名規則,但是PHP中不區分大小寫,所以用_(下劃線)來區分單詞
- PHP中函式執行完畢不會銷燬,相當於js中的閉包
- PHP中獲取全域性變數的方法有兩種,$GLOBALS["a"] a是函式外的全域性變數. global $a 這局之後所有的變數a都是全域性的
- 超全域性變數 &_GET $_POST 用來獲取表單提交的資料
$GLOBALS $_SERVER 這種超全域性變數儲存關於報頭、路徑和指令碼位置的資訊。 $_REQUEST 用於收集 HTML 表單提交的資料。 $_FILES 從客戶計算機向遠端伺服器上傳檔案。 $_ENV 通過環境方式傳遞給當前指令碼的變數的陣列。例如當前計算機名稱 $_COOKIE 變數用於取回 cookie 的值。 $_SESSION 儲存和取回 session 變數的正確方法是使用 PHP $_SESSION 變數
- 魔術變數 用於服務端列印日誌(執行錯誤不能影響程式的執行,用這個來記錄執行中遇到的錯誤)
__LINE__ 返回當前程式碼在php中的行數,用於除錯php指令碼;
__FILE__ 返回當前檔案的完整路徑(絕對路徑)
__FUNCTION__ 返回當前函式的函式名
__CLASS__ 返回當前的類名
- PHP中列印用echo ,相當於js中的document.write("") ; PHP中還有print_r 只用來列印陣列 var_dump 用來列印型別和值
- PHP的資料型別有 字串、整數、浮點型、邏輯(布林型別)、NULL、陣列型別、物件型別 ;js中有字串、整數(包括浮點型),布林型、NULL,undefined,symbol
- js的判斷型別有isNaN();PHP的判斷型別有
is_int() 是不是整型;
is_double()是不是浮點數;
is_bool()是不是布林值;
is_string()是不是字串;
is_array()是不是陣列型別;
- PHP中有隨機數的方法
mt_rand(min,max);
- PHP的陣列有兩種:索引型別陣列,關聯型陣列
$arr=[1,2,3,4]; //索引型陣列
$arr1=array("morty"=>"wang","age"="18");
- PHP中陣列的遍歷用for迴圈 foreach as
$arr=[1,2,3,4];
for($i;$i<count($arr);$i++){ //for迴圈適用索引型陣列
echo $arr[$i];
}
$arr1=array("morty"=>"wang","age"="18");
foreach($arr1 as $value){
echo $value;
}
foreach($arr1 as $key=>$value){
echo $key.":".$value;
echo "<br>";
}
最後,用PHP簡單寫個表格,具體看看和js的不同
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
table{
width: 800px;
border-collapse: collapse;
}
td{
height:30px;
line-height: 30px;
text-align: center;
border: 1px solid #000000;
}
</style>
</head>
<body>
<?php
$arr=[];
array_push($arr,array("id"=>1001,"name"=>"電腦1","price"=>4000,"num"=>5,"total"=>20000));
array_push($arr,array("id"=>1002,"name"=>"電腦2","price"=>3000,"num"=>6,"total"=>18000));
array_push($arr,array("id"=>1003,"name"=>"電腦3","price"=>2000,"num"=>4,"total"=>8000));
array_push($arr,array("id"=>1004,"name"=>"電腦4","price"=>1000,"num"=>2,"total"=>2000));
array_push($arr,array("id"=>1005,"name"=>"電腦5","price"=>5000,"num"=>1,"total"=>5000));
array_push($arr,array("id"=>1006,"name"=>"電腦6","price"=>6000,"num"=>3,"total"=>18000));
echo "<table>";
for($i=0;$i<count($arr);$i++){
echo "<tr>";
foreach($arr[$i] as $key=>$value){
echo "<td>{$value}</td>";
}
echo "</tr>";
}
echo "</table>";
?>
</body>
</html>