iOS 全棧攻城獅(PHP) —— Session 2

基本的語法

PHP 的語法和 Swift 基本一致,但和 Objective-C 相差巨大,我將同時使用三種語言的示例去講解 PHP 的基本語法。

定義一個變量

//PHP
$str = "I'm String";
$str = 'I\'m String'; //建議使用此形式
//Objective-C
NSString *str = @"I'm String";
//swift
let str = "I'm String"

要定義一個變量,必須使用 $ 開頭,后面緊跟著變量名稱,PHP無需為變量指定它的類型,它和 Swift 采用類似的類型推斷方法。
要定義一個字符串,可以使用雙引號或者單引號包裹字符串,使用單引號包裹字符串是一個良好的習(xí)慣。

定義一個數(shù)字、布爾值

//PHP
$i = 1;
$b = true;
//Objective-C
NSInteger i = 1;
BOOL b = YES;
let i = 1
let b = true

定義一個數(shù)字或布爾值,也不需要為其指定類型,PHP是弱類型語言,變量對類型不敏感。

變量的使用

要在 PHP 中使用變量,需要將美元符號也一并作為變量的一部分書寫,以下是兩個數(shù)值相加的例子。

//PHP
$a = 1;
$b = 2;
$c = $a + $b;
echo $c
//Objective-C
NSInteger a = 1;
NSInteger b = 1;
NSInteger c = a + b;
//swift
let a = 1
let b = 1
let c = a + b

弱類型

由于對類型的不敏感,一個字符串變量也可以與一個數(shù)值型變量相加。

//PHP
<?php
$a = "1";
$b = 2;
$c = $a + $b;
echo $c;

運行一下,看看結(jié)果對不對?
類型的不敏感同樣適用于浮點型與整型,浮點型與整型在PHP的世界里并沒有明顯的不同,這與 Objective-C 和 Swift 有著明顯的區(qū)別。

//PHP
$a = "1.1";
$b = 2;
$c = $a + $b;
echo $c;

再運行一下?

定義一個數(shù)組

在 PHP 的世界里面, Array 和 Dictionary 都放在一起了,它叫 “數(shù)組”,是不是覺得很神奇?

<?php
$arr = [1, 2, 3, 4];
$dict = ["key"=> "value"];

雖然他們的定義方式不一樣,但是,他們卻是可以互相轉(zhuǎn)換的……而且,由于 PHP 的類型不敏感,你可以在一個數(shù)組里面存放不同類型的Element。
PHP數(shù)組不支持泛型!

在 PHP 的世界里,數(shù)組默認都是可變的,亦即是 Mutable,你可以隨時對數(shù)組增加、刪除元素,并且他是線程安全的(一般來說,PHP不存在非線程安全的問題)。

在 PHP 里,數(shù)組越界的問題不會導(dǎo)致 Crash,但是,我仍然建議你在使用下標獲取數(shù)組對象時,先檢查有沒有越界。

$arr[4] = 5;//添加一個元素
print($arr[9]);//不會Crash,PHP內(nèi)部有數(shù)組越界檢查。

我們會在后面詳細地介紹PHP數(shù)組的行為

流程控制語句

if、switch、for 這些常見的流程控制語句,與 Objective-C 、 Swift 基本一致。

<?php
$arr = [1, 2, 3, 4];

if ($arr[0] == 1) {
    print("OK");
}

中止語句

你可以使用 die(); 或者 exit; 中止程序的執(zhí)行,所有的輸出都將馬上返回給客戶端。

結(jié)語

PHP 與 OC、Swift 在基礎(chǔ)語法上并無太大的區(qū)別,更大的區(qū)別在于 PHP 面向?qū)ο蟮恼Z法,但其實也是非常簡單的。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一想到上次打游戲的時候二哈兇我,趴著午睡的喵某人眼淚吧嗒吧嗒的掉下來。 哼,下次再敢兇我,我就,我就離家出走?。。?/div>
    愛貓的帽子閱讀 219評論 0 0
  • 上帝為你關(guān)上一扇門的時候必然為你開了另一扇窗。這句話讀過很多次,至今我也不懂那是怎樣的感覺。 只是有一天我突然懂了...
    我是四四閱讀 270評論 0 0
  • 昨晚和朋友打電話,以前喜歡過她,當時她問我喜歡她什么的時候,我說不出來,在電話里,她又一次問我這個問題,我回憶了一...
    劉賢武閱讀 502評論 0 0
  • 結(jié)構(gòu)化思維(目標+分析+方案) 1.目標(我想要什么樣的結(jié)果) 2.分析(資源分析) 3.方案(制定適合自己的,有...
    Allen_徐先森閱讀 360評論 0 0

友情鏈接更多精彩內(nèi)容