1. 程式人生 > 實用技巧 >PHP和javascript區別

PHP和javascript區別

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>