php和js區別:1、js是工作在瀏覽器端的指令碼語言,而php是工作在伺服器端的指令碼;2、js所提交的數據是交給瀏覽器來處理的,而php是把數據提交給伺服器去處理,伺服器再響應到瀏覽器。
推薦:《》
兩者在語法上類似,樓上說的對,js=javascript是工作在瀏覽器端的指令碼語言,他所提交的數據是交給瀏覽器來處理的。但是現在的Ajax技術已經可以把js提交的數據交付到瀏覽器來處理。
php,是工作在伺服器端的指令碼,把數據提交給伺服器去處理,伺服器再響應到瀏覽器,這個你要看下BS結構。如果學習建議:很多人先學的js,道理是沒錯,但是如果先學PHP的話,js就是帶着需求來學習的,學的會更加有針對性。
推薦:《》
嵌入頁面方式
JS嵌入方式:<script></script>
PHP嵌入方式:<?php
?>(常用)
輸出語法
Javascript輸出
1.alert("警告的內容")
2.prompt("提示的內容")
3.document.write()(頁面輸出內容)
PHP輸出
1.echo(常用)//可同時輸出多個字串 eg:echo $a,"hello";
2.print //只能輸出一個字串 eg:print $a;
3.print_r();//可以列印陣列
4.var_dump();//可輸出變數的內容、型別和長度
數據型別
JS數據型別
整型(整數)int
單精度小數 float
雙精度小數 double
小數 decimal
布爾型 bool(只能存兩個狀態)
日期時間型別 datetime
字元 char(不常用)強
字串 string(不常用)強
PHP數據型別
bool 布爾型(儲存兩種狀態)
int 整型
float(double) 浮點型
char 字元
string 字串
定義變數
JS定義變數:var a = 10;
(注意:1.如果定義整數或小數的變數,等號後面的值直接寫
2.如果定義字串變數,等號後面的值需要加雙引號或單引號)
PHP定義變數: $a = 5; $a = "hello"; $a = <<<A 定義的字串內容 //也可放HTML程式碼 A;
(注意:1.如果定義整數或小數的變數,等號後面的值直接寫
2.如果定義字串變數,等號後面的值需要加雙引號或單引號)
字串拼接
JS中字串拼接:"+"; eg:"hello"+"world"
PHP中字串拼接:"."; eg:"hello"."world"
PHP特有的變數特徵
// 跳脫字元:一般用在字串裏面,用來輸出特殊的內容
// \" 輸出雙引號 \t 製表符 \n 換行
eg:$s = "wo\"rld"; //跳脫加引號 $s = "wo\trld"; //跳脫製表 $s = "wo\nrld"; //跳脫換行
$a = "你好";
//解析變數
$b = "hello{$a}"; //輸出hello,你好
型別轉換
JS中型別轉換
1.轉化爲整數:parseInt();
2. 轉化爲小數:parseFloat();
3.判斷是否爲合法數位型別:isNaN();
PHP中型別轉換
1.$a = (Int)$a; //強制轉化變數a爲整數
2.$b = settype($b,"string"); //強制轉化變數a爲字串
PHP中關於變數的常用函數
$s = 5;
1.var_dump(empty($s)); //empty($s)判斷變數s是否爲空,可以爲0,可以爲空字串,也可以是未定義
2.unset($s); //刪除變數s
3.var_dump(isset($s)); //isset($s)判斷變數s是否定義
PHP中的特殊用法
1.變數取地址
$a = "hello";
$b = &$a; //&代表取變數的地址
echo($b); //輸出結果爲hello
2.可變變數
$s = "hi";
$hi = "你好";
echo $$s; //輸出的是 你好
適合的工具做適合的事。
用上牛逼的工具不等於人就變得牛逼了。
什麼領域都有天花板。
瀏覽器是JS的主場,但伺服器不是JS的主場.伺服器不像瀏覽器只能跑JS. JS在伺服器的執行環境(Node)跟瀏覽器差別很大. 在伺服器Node應用是以一個獨立的守護行程執行, 程式碼稍有不慎就可能導致進程崩潰退出, 而且修改程式碼需要重新啓動Node進程才能 纔能生效(那些自動化工具nodemon/pm2本質也是重新啓動服務). 伺服器的PHP跟瀏覽器反而更像,都是提供一個比較穩定的容器來執行指令碼. 所以一個PHP虛擬主機環境可以穩定執行多個PHP站點.你很難寫出讓PHP容器(如PHP-FPM和Apache)發生崩潰的PHP程式碼. 瀏覽器也會盡量避免因爲網站JS的問題導致的崩潰. 比如瀏覽器Chrome/Firefox跟PHP-FPM用的都是多進程架構. 子進程崩潰並不會影響主進程,主進程可以重新啓動一個子進程提供服務.
看看已經逝去的ASP,連Java開發者都不愛的JSP,寂寥落寞的RoR,以及一直自嗨的Python Web,你就會知道,現在動不動鼓吹全棧的Node遲早也是這其中的一員.
Google不喜歡JS,想推自己的Dart,但沒成功.Microsoft不喜歡JS,想推自己的TypeScript.Facebook也不太滿意JS,所以React搞了自己的JSX.可見在瀏覽器端JS也不是誰都滿意,更別說好事者把V8移植到伺服器的Node方案了.
要說哪個語言曾經嚴重威脅過PHP的市場,我會說那個語言是ASP,不過還好,微軟爲了對付JavaEE,放棄了ASP,搞了類Java Web的ASP.NET,加上ASP無法跨平臺且不開源,自然也就在與PHP的競爭中落敗.
唱衰PHP的聲音一直都有,但草根英雄PHP從來都用質樸的實力來教對手做人.因爲PHP貫徹的是實用主義和羣衆路線思想, 所以沒有豪門支援的PHP照樣能在網際網路上雄霸一方.
PHP的成功在於堅定不移地走羣衆路線. 量變(使用者量/程式碼量)引起質變. 使用者量體現在網際網路上有超過82%的網站使用PHP驅動.程式碼量體現在PHP自帶的各種功能擴充套件以及使用PHP開發的各種部落格/論壇/商城系統.
只有比PHP更PHP的語言纔有可能取代PHP. "更"體現在比PHP更簡單,更實用,更高效,學習/開發/運維成本更低. 我很樂於見到這麼一門語言出來,但很顯然,現在還沒有.
以上就是php和js區別是什麼的詳細內容,更多請關注php中文網其它相關文章!