php 點 連線符,新手易犯錯點

2021-10-07 09:42:37 字數 1553 閱讀 7078

很多時候我們需要將幾個字串連線起來顯示,在php中,字串之間使用 「點」 來連線,也就是英文中的半形句號 " . " 。" . " 是字串連線符,可以把兩個或兩個以上的字串鏈結成乙個字串。例如:

echo

'a'.

'b'.

'c';

// 輸出abc

echo

'a'.

$str1

.$str2

;//aabc123

點連線符使用起來很簡單,但實際專案中,經常還是看到有些同事犯錯,看乙個例子:

<?php

ini_set

('display_errors',1

);error_reporting

(e_all);

class

student

$class

=new

student

;$class

->

name

='zeng'

;// 示例一

echo

'***='

.isset

($class

->

***)

?$class

->

***:

'a'.

" b"

;// notice: undefined property: student::$*** in /demo/index.php on line 16

// 示例二

echo

'***='.(

isset

($class

->

***)

?$class

->

***:

'a')

." b"

;// ***=a b

示例一 提示notice錯誤,示例二能正常輸出。

示例一的執行可以解釋為,表示式不為空,執行 $class->*** ,***不是student類屬性

(  '***=' . isset($class->***) )?  $class->*** : ('a' . "  b")
示例二中因為三元運算子 加了括號,能得到想要的結果

(isset($class->***) ? $class->*** : 'a')
舉個簡單的例子:

// 理解為:( 'result: ' . 1 )  ? 'a' : ('b' . 'c')

echo

'result: '.1

?'a'

:'b'

.'c'

;// 輸出 a

echo

'result: '.(

1?'a':

'b')

.'c'

;// 輸出 result: ac

注意:【字串運算子】的優先級別 大於 【三元運算子】,實際操作中,如果記不住優先順序順序,建議習慣性給對應的表示式加括號

易犯錯的知識點

一 var ful john var obj console.log obj.prop.getfull aure var test obj.prop.getfull console.log test john 二 settimeout settimeout第乙個引數應該是函式,如果不是函式的話,直接...

C 程式設計規範 易犯錯點

int main和if後直接接括號 之後沒有標點 for if int main 標頭檔案不加 號外,其餘所有都必須加 號 注意需要加上 號的位置 break 如break後 結構體後必須加上 號 結構體的最後乙個大括號後面需要加上 號 注意 如果if後面執行的有多條語句,必須要加上大括號。通過單步...

php一些易錯點

1.在函式外宣告的引數為global,在函式內呼叫時,需加上global x 100 function test 2.型別為弱型別,不用強制宣告其型別 3.常量使用define函式宣告,在使用時不需要加上 符號 define pi 3.1416926 echo pi 4.不僅比較值還有型別 5.fo...