成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

寫給JavaScript開發人員的PHP快速入門指南

開發 前端
我從2012年開始學習如何使用HTML和CSS進行編碼,自從我的編碼之旅開始以來,PHP一直是我一直想學習的語言之一。

 我從2012年開始學習如何使用HTML和CSS進行編碼,自從我的編碼之旅開始以來,PHP一直是我一直想學習的語言之一。

 

寫給JavaScript開發人員的PHP快速入門指南

 

作為一個剛從JavaScript培訓學校畢業的學生,我決定要重新嘗試學習PHP。一直以來,要想找到一些關于 PHP 的資源,而不是針對那些從未接觸過代碼的人,是相當困難的。所以,這也是我寫這篇文章的原因。我希望能夠幫助其他像我這樣的人,他們只是需要一個快速的指導,讓他們了解自己選擇的語言和他們想學的語言之間的區別。

一般語法

PHP 的語法和 JavaScript 的比較大的區別之一是,PHP 的語法中,需要在行的末尾加上分號。我一開始很糾結于這個問題,現在有時也會這樣,所以我想在這里首先說明一下。

使用語言

在JavaScript中,除了確保文件具有 .js 擴展名之外,無需執行任何特殊操作即可運行代碼。但是,在PHP中,即使在擴展名為 .php 的文件中,也需要使用標簽。

  1. <?php  
  2. # code here 
  3. ?> 

聲明變量

在PHP中創建變量非常簡單。與JavaScript一樣,PHP是一種動態類型化的語言,因此不必在創建變量時聲明變量的類型。它使用 $ 符號表示變量。

  1. $myvar = 'value'

在PHP中,默認情況下你聲明的任何變量都是可變的,絕對可以在任何地方進行更改。

聲明常量

PHP有一個稱為 define 的特殊功能,用于專門創建無法更改的變量。它帶有兩個參數:變量的名稱和要分配給它的值。默認情況下,此函數將你創建的變量名稱設置為區分大小寫。可以通過將 true 作為第三個參數傳遞給函數來覆蓋它。

 

  1. define('CONSTANT_NAME', value, true); 

聲明數組

很像JavaScript的數組可以用標準的括號符號或PHP中的一個函數來創建。也就是說,PHP的關聯數組相當于一個JavaScript對象,是在PHP中創建key/value對集合的唯一方法,而不需要導入某種模塊。在PHP中給鍵賦值是用 => 表示的。

 

  1. $myArray = ['key1' => 'value''key2' => 'value''key3' => 'value']; 

函數

PHP中的函數與JavaScript(特別是ES5)非常相似。

 

  1. function myFunc($param) { 
  2.     return $param; 

這方面,我能在兩種語言之間找到的唯一真正的區別是,PHP具有一個運算符,可將你傳入的參數從基于值更改為引用:&。

 

  1. $myVar = 10; 
  2. echo $myVar; # displays 10 
  3.  
  4. function addTen(&$param) { 
  5.   return $param += 10; 
  6.  
  7. addTen($myVar); 
  8.  
  9. echo $myVar; # displays 20 

循環

就像函數一樣,循環與用JavaScript編寫的方式沒有太大不同。一個例外是PHP的 foreach 循環,它會根據你嘗試循環的數組類型而變化。

 

  1. foreach($arrayName as $item) { 
  2.   # do code 

類和OOP方法論

 

類是PHP與JavaScript有很大不同的地方。盡管PHP最初不是作為一種面向對象的編程語言(類似于JavaScript),但后來又添加了該功能。

訪問修飾符關鍵字

在標準JS中,類不需要修飾詞。但是,對于PHP,它們是。

你在PHP中擁有的修飾符是:

  • public——可以通過腳本或其他類在類外部使用它。
  • private——創建此類的類是唯一可以訪問它的類。
  • protected ——只有當它在類的子類中被調用時,才可以在類外訪問。
  • static ——允許使用一個屬性或方法,而不需要對該屬性或方法所屬的類進行實例化。

在PHP中創建類時,比較好的做法是利用這些關鍵字來告訴類它需要如何使用類中的屬性和方法。

 

  1. class MyClass { 
  2.   private $classAttrib; 
  3.   public function __construct($classAttrib) { 
  4.     this->classAttrib = $classAttrib; 
  5.   } 

在上面的代碼片段中,你會注意到幾件事。首先可能是兩個修飾關鍵字。在這里,我們聲明了一個名為 classAttrib 的私有變量,這個變量只能通過 MyClass 訪問。第二個是我們與PHP的內置 __construct 方法結合使用的 public 關鍵字。就像在JavaScript中一樣,這使我們可以實例化一個類,就好像它是一個函數一樣。

 

  1. $myClass = new MyClass(someValue); 

this和箭頭

繼續上面的 MyClass 示例,你會注意到我們以與JavaScript中相同的方式來使用它。此處的區別在于,我們使用箭頭(->)訪問該類上的 classAttrib。我們還將使用這個指針來訪問類上的任何需要在整個代碼中使用的東西。

這是JavaScript中的同一類:

 

  1. class MyClass { 
  2.   constructor(classAttrib) { 
  3.     this.classAttrib = classAttrib; 
  4.   } 

Getters 和 Setters

Getter和Setter是用于獲取和設置(或更新)與類屬性有關的信息的類方法。在JavaScript中,我們通常不需要編寫它們,類似地,在PHP中也不需要。話雖如此,但在PHP中你會看到這些方法的頻率要高得多,所以我覺得在這里還是慎重一點。基本上,這些方法是唯一應該在類外直接修改或與類屬性交互的東西。

 

  1. # ... inside MyClass 
  2. public function setClassAttrib($classAttrib) { 
  3.   return $this->classAttrib = $classAttrib; 
  4.  
  5. public function getClassAttrib() { 
  6.   return $this->classAttrib;   

繼承

從PHP中的父類繼承類似于JavaScript,不同之處在于我們不使用 super 來傳遞父類的屬性。相反,我們使用 :: 運算符,也稱為范圍解析運算符。

 

  1. class SecondClass extends MyClass { 
  2.   private $newAttrib; 
  3.   public function __construct($classAttrib, $newAttrib) { 
  4.     parent::__construct($classAttrib); 
  5.     this->newAttrib = $newAttrib; 
  6.   } 

PHP和JavaScript的相似之處

 

既然我們已經討論了JavaScript和PHP之間的一些差異,那么讓我們來談談一些相似之處!

  • PHP有展開(...)語法!你可以使用與JavaScript中完全相同的語法,在參數(參數解包在PHP 5.6以上)和數組(從PHP 7.4以上開始)中都可以使用!
  • PHP有三元運算符!
  • PHP具有 == 的強制類型轉換!

如前所述,我還是PHP的新手,但希望本文對你有所幫助!

責任編輯:華軒 來源: 今日頭條
相關推薦

2012-05-30 15:15:42

ibmdw

2020-06-16 07:46:01

Web開發工具

2020-07-23 08:21:25

PHP開發人員MVC

2020-10-29 12:53:28

JavaScriptTypeScript開發

2021-02-16 16:44:40

RustJavaScript開發

2022-04-20 10:56:06

JavaJVM參數

2010-05-17 09:50:24

PHP

2025-02-08 11:02:57

2022-05-16 13:58:52

開發區塊鏈Web3

2009-08-27 12:00:40

ibmdwJava

2022-06-06 10:30:23

容器鏡像

2009-09-10 14:18:03

PHP庫

2021-10-27 10:43:24

開發技能代碼

2017-10-24 11:59:41

JavaScript

2013-09-25 09:20:39

iOS開發iOS7iPhone5s

2009-12-08 19:39:16

PHP開發人員

2010-08-09 16:09:25

2018-11-26 09:55:07

MySQL誤刪數據數據庫

2009-11-23 20:07:51

ibmdw開發

2021-02-19 09:33:01

kubernetesJAVA服務
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产免费又色又爽又黄在线观看 | 色吊丝2| 亚洲欧洲中文日韩 | 日韩欧美视频在线 | 欧美456| 成人av电影天堂 | 国产91丝袜在线播放 | 蜜桃精品视频在线 | 男女羞羞的网站 | 成人亚洲精品久久久久软件 | 精品国产一二三区 | 亚洲一区二区精品视频 | 成人免费观看男女羞羞视频 | 日一区二区 | 蜜臀久久99精品久久久久久宅男 | 日本不卡在线观看 | 黄色欧美 | 99精品国产一区二区青青牛奶 | 奇色影视 | 日韩二三区 | 亚洲欧美少妇 | 91精品国产综合久久久亚洲 | 欧美一区在线视频 | 国产一区2区 | 欧美日韩久久久 | 日日夜夜av | 欧美久久一级 | 午夜在线| 久久婷婷香蕉热狠狠综合 | 久久中文高清 | 国产成人精品午夜 | 国产乱码精品一区二区三区忘忧草 | 亚洲精品福利视频 | 国产免费一区二区三区 | 国产一区二区三区在线视频 | 青青久在线视频 | 国产激情福利 | 一区二区亚洲 | 成人免费视屏 | 免费视频成人国产精品网站 | 午夜激情视频 |