Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 久久成人精品,在线观看一区二区精品视频,国产精品久久久久久影院

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          短短兩年使用率下滑 40%!曾經風靡全球的 PHP 為何逐漸失去優勢?

          者 | Richard MacManus

          譯者 | 核子可樂

          策劃 | Tina


          根據 WordPress 聯合創始人 Matt Mullenweg 的說法,PHP 的受眾比例急劇下降,疑似受到 WordPress“JavaScript 優先”主張的影響。


          TIOBE 編程語言人氣指數發布更新,并提出“PHP 的魔力是否正在消散?”的靈魂拷問。今年 4 月,PHP 在 TIOBE 編程語言指數榜上僅位列第 17,“成為其有史以來的最低排位”。


          暴露 PHP 人氣急劇下滑的還不只是 TIOBE 榜單。在年度 Stack Overflow 開發者調查報告中,PHP 的市場占比也從 2018 年的 30.7%(即受訪者當中使用 PHP 的百分比)下降至 2023 年的 18.58%。JetBrains 開發者生態系統調查同樣觀察到類似的趨勢,PHP 占比從 2017 年的 30%下降至 2023 年的 18%。而且最后一項數據尤其值得關注,因為 JetBrains(以及 WordPress 托管廠商 Automattic)正是 PHP 的最大贊助方之一。


          JetBrains 公布的開發者調查結果




          這種下滑趨勢在 BuiltWith 上體現得尤其明顯,自 2020 年底以來 PHP 的流行度增長線開始斷崖式跌落。


          BuiltWith 公布的 PHP 趨勢圖



          截至 2021 年 11 月的一項調查顯示,PHP 在互聯網前百萬個網站中的占比仍在 3 萬以上。但如今兩年多過去,其占比已經下滑至 1.5 萬左右。而且截至本文撰稿之時,BuiltWith Quotes 公布的實際占比數字為 18.19%。18%這個比例與 Stack Overflow 及 JetBrains 的調查發現高度吻合,因此我們可以基本確定,PHP 在開發者中的受歡迎程度已經從之前的約 30%萎縮至現在的 18%。換言之,在短短兩年之間下降了 40%。


          所以結論是什么?在過去幾年里到底發生了什么樣的變化,才導致 PHP 在 Web 編程語言的競爭當中迅速落敗?

          WordPress 高調宣布“JavaScript 優化”

          可以說,PHP 衰落的最大原因就是 WordPress(迄今為止最具人氣的 Web 內容管理系統)正在從 PHP 轉向 JavaScript。WordPress 聯合創始人兼 Automattic 公司 CEO Matt Mullenweg 在上月于中國臺灣召開的 WordCamp Asia 2024 大會上也就此做出論述。


          他在回答觀眾提問時表示,“我覺得 WordPress 中的大部分新代碼現在都是由 JavaScript 編寫而成,而且這種趨勢已經持續了一段時間。因此從方方面面來講,如今的 Gutenberg 已經轉化成了一個 JavaScript 優先的項目。”


          大家絕沒看錯:Matt Mullenweg 直言現在的 WordPress 就是個“JavaScript 優先的項目”。而他所提到的 Gutenberg,其實是該公司備受爭議的全新用戶界面,同時也是推動 JavaScript 全面替代 PHP 的主要原因。當然,他也承認從 PHP 轉向 JavaScript“并不容易”。


          WordPress 聯合創始人 Matt Mullenweg 在 WordCamp Asia 2024 大會上




          這倒不是說 WordPress 不再依賴于 PHP。畢竟在撰寫本文時,我恰好就是在 WordPress 中以“/wp-admin/post-new.php”結尾的 URL 輸入這篇文章。但只能說目前如此,未來的 WordPress 已經確定要走向另一條道路。


          Mullenweg 還談到,他希望能在 WordPress 中看到進一步改進——令人驚訝的是,他已經開始從 JavaScript 的視角出發看待這些變化。比如說,PHP 是一種服務器端腳本語言(意味著代碼通常在 Web 服務器上處理),而 Mullenweg 希望 WordPress 能使用 JavaScript 把更多操作交由客戶端執行。


          他意味深長地表示,“我真心覺得我們應該把更多處理任務留在客戶端。比如對于正在編輯的內容,這部分處理就可以交給客戶端。這種在瀏覽器運行 JavaScript 的速度可能會更快,因為現在虛擬機和性能極強的處理器已經相當普遍。”


          在演講即將結束之時,有觀眾向 Mullenweg 詢問他對 Gutenberg 項目的感受,以及開發人員為其做出貢獻時遭遇到哪些困難。提出這個問題的開發者還希望“降低 Gutenberg 的抽象級別”。


          Mullenweg 回應稱,“說實施,我覺得大家必須適應這種發展態勢。我認為 Gutenberg 的開發方式和 JavaScript 優先理念才是大部分 Web 開發工作的未來方向。順帶一提,其實我也得重新學習,這些東西跟我當初熟悉的方式也有區別。也許我們可以把某些抽象調整得更簡單一點,但總體而言,我會選擇深入研究一下。”


          他還補充稱,Gutenberg 項目、包括向 JavaScript 語言的轉變,目前還遠未完成。“在啟動 Gutenberg 項目時,我們就知道這可能是個為期 10 年的項目。目前我們才剛剛完成 60%到 70%的工作。”


          與此同時,在 PHP 基金會這邊……

          不得不承認,WordPress 項目(也是 PHP 能夠在 Web 領域保持流行的最大動因)正堅定向著 JavaScript 世界邁進。這幾乎必然會阻止更多年輕開發者選擇 PHP,同時迫使其他開發人員(例如那些致力于服務 WordPress 客戶的開發人員)從 PHP 轉向 JavaScript。


          但好消息是,仍然有相當一部分開發者群體會繼續使用 PHP——畢竟兩輪大規模開發者調查中的這 18%對應著相當體量的從業受眾。而 PHP 基金會將繼續為他們提供支持。


          PHP 基金會于 2021 年 11 月正式成立,希望以非營利組織的身份承擔起 PHP 項目的管理職責。PHP 基金會是由 JetBrains 領導的企業聯盟所建立,其中包括 Automattic、Zend、Laravel 以及 Acquia(Drupal 的托管商)等。JetBrains 工程師 Roman Pronskiy 則出任項目負責人,目前在基金會網站上的頭銜為“運營主管”。


          在今年 2 月的 Laravel 會議上,Pronskiy 主要探討了技術問題,同時也承認“PHP 基金會目前最艱巨的任務,就是扭轉 PHP 在公眾心目中的形象。”雖然他沒有具體說明是哪些原因導致 PHP 的公眾形象下降,但 Matt Mullenweg 在解釋 WordPress 轉向“JavaScript 優先”的理由時已經基本給出了答案。無論如何,Pronskiy 正快速投身于 PHP 項目的后續開發,并為其組織起由 10 名有償開發者組成的全職團隊。


          PHP 基金會團隊




          總而言之,2024 年的 PHP 幾乎成了 Web 開發領域爹不疼、娘不愛的“孤兒”,而 JavaScript 則是在家、在校都備受關注的寵兒。對 PHP 來說更加可悲的是,目前的這種人氣下滑趨勢短時間內恐怕無法停止——畢竟 WordPress 那邊的開發團隊還在積極適應新的 JavaScript 規范。但至少 PHP 基金會還在為此而努力,也許這股頹勢能夠逐漸迎來轉機。

          原文鏈接:短短兩年使用率下滑40%!曾經風靡全球的PHP為何逐漸失去優勢?_編程語言_Richard MacManus_InfoQ精選文章

          、原因

          1.編碼原因。在用GD庫輸出中文字符串時,要使用imagettftext()函數。但如果PHP編譯時啟用–enable-gd-jis-conv選項的話,那么非ASCII字符(例如漢字、拼音、希臘文和箭頭) 會被當成EUC-JP編碼 (phpinfo中美其名曰“支持JIS編碼的字體”), 從而導致亂碼(由于西文字體沒有假名或漢字,一般表現為全部是方框)。

          2.沒有選擇正確的TTF字體文件。使用gd庫時如果要輸出中文字符,需要選擇正確的TTF字體文件。




          二、解決方法

          1.建議整站使用UTF8編碼,如果你已使用的是GB2312或GBK編碼,請使用iconv或自定義的gb2312與utf8轉換函數進行字符編碼轉換。

          2.如果你是剛進行php環境搭建,建議將Apache配置文件中的默認字符集修改為UTF8,即AddDefaultCharset UTF8。

          3.如果上述方法還不行,請檢查你在編譯gd庫時是否添加了“–enable-gd-jis-conv”選項,此選項是為了讓gd庫支持日文編碼的字庫,請取消此選項并重新編譯。此方法本人已驗證過,Linux系統下安裝配置nginx+php環境,搭建Zabbix服務時碰到,添加了“–enable-gd-jis-conv”選項,Zabbix使用中文界面,更換字體文件前后,查看主機監控圖標信息都會出現亂碼。

          4.使用php gd庫產生中文亂碼的另一個原因是沒有選擇正確的TTF字體,你需要選擇支持中文的字體,常用的中文字體文件是simsun.ttc和simhei.ttf。

          按照上述方法,基本上使用php gd庫產生中文亂碼時都能夠解決。只要仔細排查其實gd庫的中文亂碼解決起來非常方便。



          參考:

          https://www.php.cn/php-ask-456070.html

          https://blog.csdn.net/lizhenjian521/article/details/51038547

          為PHP編程領域的專家,我深知從網頁中提取HTML元素的益處。以下是幾種有效可行的技術手段,幫助您輕松應對網頁數據處理挑戰!

          利用file_get_contents函數獲取網頁文檔。

          首要之事,file_get_contents函數在索取網頁源代碼方面具備極其重要的應用價值。借助此功能,我們得以輕松便捷地將文檔內容儲存在特定變量之中,從而大大提高后續流程的效率和靈活度。

          2.使用正則表達式匹配HTML元素

          接下來,如何利用正則表達式實現對HTML元素的精細而高效的查找?我們借助這個實用工具,便可迅速定位并獲取所需對象信息了。

          3.使用preg_match_all函數提取所有匹配結果

          利用PREG_MATCH_ALL功能,便能順利檢索出所有HTML元素,進而將其轉化為易于后續操作的數組格式進行處理。

          4.使用foreach循環遍歷匹配結果

          處理匹配結果時,利用for each循環對所有HTML元素進行精細處理,確保無疏漏。

          5.使用strip_tags函數去除HTML標簽

          在某些特殊情況下,只需關注HTML代碼內的文本內容,無需保留其他標簽信息。此時,運用strip_tags函數便可便捷地消除所有HTML標簽,從而顯示出純正文信息。

          6.使用getAttribute方法獲取元素屬性

          對于特定HTML參數的解析,我們推薦使用getAttribute技巧。此方法簡易方便,能快速提供詳細屬性信息。

          7.使用XPath進行高級定位

          除了常規的正則表達式, Xpath是一種更具靈活性的XML節點選擇工具。這是一種專業且精準的分析XML路徑語言的算法。

          8.使用DOMDocument類進行DOM操作

          借助DOMDocument類,可以精確高效地理清并實現網頁功能,如元素編輯,刪除及添加等。其豐富的方法屬性使其在解決DOM樹操控方面更具優勢。

          9.使用CURL庫模擬瀏覽器請求

          在特定環境下,網頁會設立防爬蟲保護措施以避免數據被扒取。然而,依托于CURL庫及其模擬瀏覽器請求的技術,這類限制已得以有效規避。

          10.不斷學習和實踐才能掌握技巧

          啟示強調,深入理解HTML元素,對于熟練應用于各類實戰項目絕非易事,唯有持之以恒地深化學習與實踐才得實現。

          希望今日的分享能助您深化對PHP獲取及操作HTML頁面元素的理解掌握。立志者終成功,堅持努力定將成就卓越PHP工程師之榮光。預祝您在技術領域百尺竿頭,再創新篇章!


          主站蜘蛛池模板: 熟女精品视频一区二区三区| 国产成人综合一区精品| 亚洲一区二区三区四区视频| 精品国产伦一区二区三区在线观看| 日韩精品一区二区三区在线观看l 日韩精品一区二区三区毛片 | 国产成人精品一区二三区在线观看| 78成人精品电影在线播放日韩精品电影一区亚洲 | 国产AV一区二区三区无码野战| 国内精自品线一区91| 蜜臀AV免费一区二区三区| 手机看片福利一区二区三区| 一区在线观看视频| 视频一区二区在线播放| 海角国精产品一区一区三区糖心| 久久婷婷色一区二区三区| 夜夜添无码试看一区二区三区| 天天看高清无码一区二区三区 | 一区一区三区产品乱码| 亚洲美女一区二区三区| 自拍日韩亚洲一区在线| 免费播放一区二区三区| 久久4k岛国高清一区二区| 亚洲熟女少妇一区二区| 日本不卡一区二区三区| 国模私拍一区二区三区| 久久精品国产一区二区三区肥胖| 无人码一区二区三区视频| 精品一区二区三区免费视频| 日韩av片无码一区二区三区不卡| 日本一区二区三区免费高清在线 | 精品国产日韩一区三区| 无码人妻精品一区二区三区9厂| 一色一伦一区二区三区| 国产综合视频在线观看一区| 日本精品3d动漫一区二区| 国产成人精品一区二区三区| 国产成人无码AV一区二区 | 免费一区二区无码视频在线播放| 国产成人一区二区三区免费视频 | 久久一区二区三区99| 高清国产精品人妻一区二区|