性能這個玩意,和你代碼邏輯有很大關系,再者和資料庫的優化也有關,php 7 開了opcache性能比以前的版本高了差不多一倍,你可試試同樣的數據查詢,他倆誰快
㈡ php7 vs java 誰是王者差距大嗎
編程語言無真正的獨攬風騷的王者。
但是如果從我7年工作經驗接觸的來看,java無疑很普遍。(我是做銀行項目的)。
除開主機系統,銀行開放平台,外圍系統基本都是java編寫的!
PHP暫無了解。畢竟我參與或者了解等的項目都是java,語言主要看參與的項目行業來看。
㈢ Php7有哪些新特性
PHP 7.4 的主要特性包括以下幾個,
短閉包函數(short closure) 預載入提交性能 屬性類型限定 Improved type variance(不會翻譯) 三元運算簡寫 數組展開運算 新增類的魔術方法:serialization 數字分隔符 運算優先順序 允許在__toString中拋出異常 支持反射引用 新增位元組分割函數 移除php短標簽 棄用左關聯運算符 不再向後兼容的變更 短閉包函數短閉包函數可以減少冗餘代碼:
array_map(function (User $user) { return $user->id; }, $users) array_map(fn(User $user) => $user->id, $users)需要注意幾點:
短閉包可以直接訪問閉包函數外面的變數,所以不需要再寫?use?關鍵詞 以fn關鍵詞開始 $this?可以像普通的閉包一樣使用 短閉包只有一行代碼,僅僅做返回聲明使用,不允許使用return?關鍵詞還可以使用更嚴格類型的方式
$ids = array_map(fn(User $user): int => $user->id, $user); 預載入PHP預載入可以極大的提高性能
優點:在PHP 7.4以前,如果你使用了框架來開發,每次請求文件就必須載入和重新編譯。預載入在框架啟動時在內存中載入文件,而且在後續請求中永久有效。
缺點:性能的提升會在其他方面花費很大的代價,每次預載入的文件發生改變時,框架需要重新啟動。
屬性類型限定 class A { public string $name; public Foo $foo; }不得不說,PHP越來越接近Java等強類型語言
Improved type variance協變返回類型:
class ParentType {} class ChildType extends ParentType {} class A { public function covariantReturnTypes(): ParentType { /* … */ } } class B extends A { public function covariantReturnTypes(): ChildType { /* … */ } }依賴(是不是很熟悉):
class ParentType {} class ChildType extends ParentType {} class A { public function covariantReturnTypes(): ParentType { /* … */ } } class B extends A { public function covariantReturnTypes(): ChildType { /* … */ } } 簡寫三元運算符在目前> PHP 7以後的寫法:
$data['date'] = $data['date'] ?? new DateTime(); 在PHP 7.4你可以這樣寫: $data['date'] ??= new DateTime(); 數組展開運算合並數組到另一個數組中,返回一維數組
$arrayA = [1, 2, 3]; $arrayB = [4, 5]; $result = [0, ...$arrayA, ...$arrayB, 6 ,7]; // [0, 1, 2, 3, 4, 5, 6, 7]注意? :只對數字索引有效
新增類的魔術方法RFC添加了兩個新的魔術方法__serialize和__unserialize
數字分隔符允許使用下劃線更直觀的分隔數值
$unformattedNumber = 107925284.88; $formattedNumber = 107_925_284.88; 運算優先順序PHP 7.4之前,如果你這樣寫:
echo "sum: " . $a + $b; PHP會解析為: echo ("sum: " . $a) + $b; PHP 8將會解析為: echo "sum :" . ($a + $b); __toString中拋出異常支持反射引用PHP 7.4將會新增ReflectionReference?類
移除php短標簽<?將會在PHP 8中移除,<?=會繼續保留
棄用左關聯運算符PHP遺留了一些奇怪的怪癖,比如
1 ? 2 : 3 ? 4 : 5; // 將會在 PHP 7.4 中廢棄,在 PHP 8中會拋出編譯錯誤 (1 ? 2 : 3) ? 4 : 5; // 正確 不再向後兼容的變更 棄用在沒有父類的情況下調用parent:: 調用var_mp列印DateTime和DateTimeImmutableshi』實例,將不再保留對象上的可訪問屬性 openssl_random_pseudo_bytes?會在調用錯誤時拋出異常 序列化PDO和PDOStatement?實例將會生成一個Exception而不是PDOException異常 調用get_object_vars()列印ArrayObject?實例將會返回ArrayObject?自己的屬性,而不是被包裹的數組或對象的值,數組強制轉換不受影響
㈣ PHP和JAVA比較有哪些優勢
選擇java還是選擇PHP?學習java還是學習PHP?java好還是PHP好?java強大還是PHP強大?語言的紛爭一直沒有停歇過,我並想參與紛爭,我只想從各個角度和我知道的實際情況,對二者做個全面剖析。希望對即將入行的朋友一點參考。
1、java和php技術層面對比:
java是純面向對象開發,功能強大,分支眾多,沒有java不能做的軟體。C/S也好B/S也好。從功能上講,沒有語言可以和java相比。但其優勢也是其劣勢,具體參考第6點。
PHP屬於後起之秀,吸收了java和c以及perl等語言優點,專注互聯網領域。WEB領域PHP擁有得天獨厚的優勢,WEB領域沒有語言可以和他比。
兩者相比,基本上java完勝。但是其實並沒有太大的可比性,專注領域不同。單純拿兩者都可以做的WEB來說,PHP完勝。
2、java和php市場份額對比:
java語言算是古老,多年的發展,其在C/S領域和B/S領域都佔有一席之地,特別是在電信和銀行行業。但隨著社會需求的變化和其他語言的專注,java的市場正被一點點蠶食,WEB領域幾乎被PHP一統天下,嵌入式領域幾乎被C++一統天下,客戶端領域幾乎被C語言一統天下,要不是安卓的出現,java的命運還真不好說了。其之前積累的巨大java帝國不會一下子崩塌,一定是有一個過程。所以現在學習並不需要擔心其前途,現在學習你更需要擔心的卻是近十年間英才輩出的javaer,和大批正在進入java陣營的同業者。
PHP在市場描述就比較簡單了,因為我們只要看一個領域,那就是web領域。WEB領域php的市場超過80%,其餘的則是如java-JSP,asp,C#,.NET,python,ruby等。網站500強中有395家使用PHP。全球最大的兩個網站facebook和新浪微博全在使用PHP。
兩者相比,算平分秋色。
3、java和PHP的發展空間對比
安卓勢頭很猛,但手機安裝app數量有限,推廣難,也是app面臨的最大挑戰,好在安卓只有JAVA可以做,除此之外就是HTML5了。
中國人口佔全球人口19.7%,中國網民佔全球網民22.4%,中國網站數量佔全球網站數量的0.5%,網站的可發展空間可謂巨大;發達國家互聯網對GDP的貢獻可達20%,中國互聯網對GDP的影響僅為3%。可謂互聯網的發展空間巨大,而互聯網離不開WEB,WEB離不開PHP。
兩者相比,個人覺得PHP的優勢更加明顯。
4、java和PHP的薪資對比
薪資事由供求關系決定的,人才缺失,薪資自然高,人才飽和,薪資自然不會高。
java由於大學基本都有這個課程,很多人想從事軟體行業的時候,自然就學習JAVA了,加上java近10年的火爆,人才輩出,整個java行業是處於供大於求的。南京地區:一個30人的java培訓班,最後差不多10人找不到理想的工作而轉行,最低薪資甚至只有1000多元,就有人肯干。當然java學的好的,薪資4000多也是不少的。
PHP完全依託於市場的驅動,難點在於很多人並不了解PHP,也沒途徑可以了解,根本原因是大學沒有這個課程,我知道的,南京百十所高校只有曉庄學院開了PHP課程,而且不是作為主修。市場對PHP的需求,高校並不清楚,高校更願意推符合學院派特點的java。
學習php的人少,企業需求多,導致PHP薪資遠遠超過了同行業者。一般起薪沒有低於3000元的。南京地區高的早已經突破4500元。北上廣更是突破了6000元的起薪。
兩者相比:除了java工作難找,但只要找到了工作,高位線是差不多的,低位線JAVA明顯處於劣勢。
5、java和php的薪資漲幅速度對比:
java是公認的難,難上手,真正上手需要至少1-2年,而這期間都屬於學徒級別,薪資漲幅有限。2年後會有一個較大的漲幅,基本拿個6-7千是沒有問題的。
PHP是公認的簡單,上手極快,基本過了試用期就可以漲工資了,PHPer正常是半年漲一次薪資,前3年的幅度都還可以,1年5-6千,2年7-8千。3年能過萬的也大有人在。
兩者相比:其實php的前端優勢明顯,後段雙方區域持平。並不像很多人說的PHP後面難漲,PHP缺人,但更缺熟手。java也不像很多人吹噓的那樣高薪,兩級分化嚴重。其實也很正常,越難的語言,兩級分化越是嚴重。
6、java和php各自發展的瓶頸:
JavaEE體系曾經統治企業級軟體開發長達數十年之久,十年間英才輩出,但是Java語言本身卻越來越顯示出臃腫和分裂的態勢。使用Java是個昂貴的選擇,復雜的需求設計, 緩慢的項目進度,昂貴的應用伺服器和維護難度使Java成為了一種廟堂之上的語言。而版本的分裂也使所謂的跨平台特性成為了一句空話。Java的特性使得它並不適合業務隨著市場快速變化的互聯網企業,WEB領域幾乎被PHP一統天下,嵌入式領域幾乎被C++一統天下,客戶端領域幾乎被C語言一統天下,要不是安卓的出現,java的命運還真不好說了。php的大中型系統開發,方便、快速、是java跟asp.net沒法比擬的, 還有php有很多如yaf,yii,ci等強大的框架, 中小型一般系統的開發,一個thinkphp就足於通殺java的ssh三大框架了。
PHP由於其簡單,快速開發等特點,也導致了開發復雜應用稍顯吃力,所謂成也蕭何敗也蕭何,PHP由於其關注應用層面,開發基本不需要考慮底層的東西,導致其開發快速,學習簡單;但也導致了學習PHP工作一段時間比較容易遇到瓶頸,PHP在5.3版本後加入了更為強大的擴展,通過PHP的擴展可以實現PHP本身實現不了的功能。所以PHP開發遇到了這樣瓶頸,可以考慮通過擴展來解決,facebook和weibo.com正在大量使用擴展功能去應對一個又一個的難題。新浪微博架構師兼首席PHP技術顧問惠新宸一直在專注與PHP底層原理的研究和分享。擴展是被他認為PHP最偉大的地方。
7、java和PHP的崗位數對比:
一下數據出自2014年9月初的網路統計:
2014年9月初,全國java招聘崗位數為82703個。
全國java招聘崗位數
2014年9月初,全國PHP招聘崗位數為47263個。
全國PHP招聘崗位數
java的崗位數差不多是PHP崗位數的2倍不到。但值得深思的是,java的人才數量是PHP人才數量的100倍還不止。
8、java和PHP的學習成本對比:
java學習,是公認的難。難以上手,難以理解。自學時間成本是12個月,自學成功率不到10%,培訓時間成本也近6個月。培訓費用平均成本大致為15000元左右。成為熟手的時間成本為2年。成為高手的時間成本一般為5年以上。
PHP學習,是公認為最簡單的語言。解釋性語言,無需編譯。自學時間成本是6個月,自學成功率20%,培訓時間成本3個月。培訓費用平均成本8000元左右。成為熟手的時間成本為1年。成為高手的時間成本一般為3年以上。
兩者相比,java的學校成本要明顯高於PHP。
總結一下:java和PHP各有各的優勢,說到明天早上也不一定說的完,我想說的是學習哪一個,都是OK的。
想學java就從事安卓行業,想從事WEB領域,就學習PHP。
由於java的學習難度,沒有基礎或者基礎不好的同學還是謹慎選擇,對於零基礎的同學還是PHP可能更加適合一點。
㈤ php7的性能會趕上java嗎
當然能,Java太過哆嗦,php簡潔高效,
㈥ php7的性能會趕上java嗎
當然不可能,弱類型動態語言性能永遠不可能比得上強類型靜態語言。。解釋型語言也永遠不可能比編譯型語言更快。。
這道理其實很簡單。。。你告訴計算機的內容越詳細,計算機需要自己去「猜」的東西就越少。。。自然性能就越好。。。別說PHP7,就算將來發展到PHP999,只要它是動態語言,只要它是解釋型, 它就絕對不可能在性能上超越強JAVA。。。這是從原理上就不可能辦到的事情。。。
㈦ php7的性能會趕上java嗎
其實性能這個東西永遠都沒有夠用的時候,
首先你要軟體寫得好, 優化的好.
其次你需要更好的硬體.
java的性能在計算密集的場合比如一個很大的循環計算才能顯現出來.
其他和PHP相比優勢不是很明顯的.
㈧ php7的性能會趕上java嗎
趕不上,原理上的問題,一個是編譯型一個是解釋型。
㈨ PHP7會毀了PHP嗎
我覺得題主說的「毀掉」的意思可能是是毀掉PHP超低的入門門檻。感覺越寫越像Java。然而不可避免的,要接受改變。在ES6剛出的時候也有很多人說ES6毀了JavaScript.原型繼承的寫法多麼多麼好。class寫法多麼多麼糟。時間證明,ES6標准正在快速被實現。我相信,PHP正在越變越好
關於嚴格模式:
從目前來看我覺得新項目用PHP的話,還是開了嚴格模式比較好。因為7.1會加上JIT,性能會提升更多。不給返回值類型JIT不好做啊。對於新手來說,不開嚴格模式學習也不會有太大的問題。
總之,我覺得PHP7是個好事。我就等3號發布正式版升級了~話說什麼時候能把那些語法整理一下啊,都二十年了,咱函數名調整一下吧。要不然就被黑一輩子了 T_T
㈩ Java和PHP哪個比較好
1、語言難易比較
PHP是一種解釋執行的腳本語言,語法和C語言類似,易學易用,不懂電腦的非專業人員稍經學習也能使用PHP.而Java要先編譯成Class文件,然後在Java虛擬機上執行,Java開發需要熟悉Java語法以及一些核心的架構,從而實現一種可復用的、跨平台的軟體,Java培訓比PHP培訓要難學的多。
2、技術架構比較
從技術架構來說,Java語言相比PHP有明顯的優勢,Java使用的是面向對象的系統設計方法,而PHP還是採用面向過程的開發方法。PHP只能實現簡單的分布式兩層或三層的架構,而JAVA可以實現多層架構。資料庫層、應用邏輯層、表示邏輯層彼此分開,而且現在不同的層都已經有一些成熟的開發框架的支持。例如Struts就是利用Java的web開發技術實現了MVC的設計模式,而在業務邏輯層也有Spring框架,資料庫持久化層有Hibernate等框架。這些框架可以方便開發者高效、合理、科學得架構多層的商業應用。從數學運算和資料庫訪問速度來講,Java的性能也優於PHP.實際上,對於跨平台的大型的企業應用系統來講,Java幾乎已經成為唯一的選擇。
3、Java和PHP技術層面對比
Java是純面向對象開發,功能強大,分支眾多,沒有Java不能做的軟體。C/S也好B/S也好。從功能上講,沒有語言可以和Java相比。
PHP屬於後起之秀,吸收了Java和c以及perl等語言優點,專注互聯網領域。WEB領域PHP擁有得天獨厚的優勢,WEB領域沒有語言可以和他比。
4、Java和PHP的發展空間對比
安卓勢頭很猛,但手機安裝app數量有限,推廣難,也是app面臨的最大挑戰,好在安卓只有JAVA可以做,除此之外就是HTML5了。目前來說互聯網的發展空間巨大,而互聯網離不開WEB,WEB離不開PHP。兩者相比,個人覺得PHP的優勢更加明顯。
5、適用性比較
PHP適合於快速開發,中小型應用系統,開發成本低,能夠對變動的需求作出快速的反應。而Java適合於開發大型的應用系統,應用的前景比較廣闊,系統易維護、可復用性較好。還有,同樣功能的系統用Java開發的系統要比PHP開發的系統的價格要高。
6、薪資比較
薪資事由供求關系決定的,人才缺失,薪資自然高,人才飽和,薪資自然不會高。從需求上看企業對Java人才的需求是比較大的,但Java方面的人太多,而PHP方面的人才要少很多,所以面上看PHP的薪資應該要高一些,但Java只要學得好,薪資高的也很多,這方面還是看技術。
總結下:不管是PHP還是Java都是不錯的選擇,目前來說這兩種語言都還處在勢頭上,但是從長遠出發還是Java好,畢竟從性能、處理數據各方面來看還是Java有優勢一些,當然最終選擇還是在你自己的手裡。