PHP弱型別(二)

2021-10-13 17:13:47 字數 1129 閱讀 2411

3.intval()函式

intval()函式用來獲取變數的整數部分,在以下部分**中:

<

?php

$uid = $_get[

'uid'];

if($uid ==

"1")

$result =

mysql_query

($query)

print_r

(mysql_fetch_row

($result)

);

當uid=0.9999999999999999超長浮點數時,**邏輯會進入if語句中,查詢uid=0的使用者資訊。

輸出結果:

4.陣列比較:

in_array()和array_seach()函式,如果$strict引數沒有設定成true,則會採用鬆散比較。(預設設定為false)

<

?php

$array =[0

,1,2

,'3'];

var_dump

(in_array

('abc'

, $array));

// true

var_dump

(array_search

('abc'

, $array));

// 下標為0

var_dump

(in_array

('1abc'

, $array));

// true

var_dump

(array_search

('1abc'

, $array));

// 下標為1

php 弱型別總結

最近ctf比賽,不止一次的出了php弱型別的題目,藉此想總結一下關於php弱型別以及繞過方式 php中有兩種比較的符號 與 a b a b 在進行比較的時候,會先判斷兩種字串的型別是否相等,再比較 在進行比較的時候,會先將字串型別轉化成相同,再比較 如果比較乙個數字和字串或者比較涉及到數字內容的字串...

php 弱型別比較

php中 是弱等於,不會比較變數型別 是強等於,會先比較變數型別。0e 開頭跟數字的字串 例如 0e123 會當作科學計數法去比較,所以和0相等 0x 開頭跟數字的字串 例如 0x1e240 會被當作16進製制數去比較 布林值true和任意字串都弱相等。當比較的一方是字串時,會先把其轉換為數字,不能...

php 弱型別總結

0x01 前言 最近ctf比賽,不止一次的出了php弱型別的題目,藉此想總結一下關於php弱型別以及繞過方式 0x02 知識介紹 php中有兩種比較的符號 與 1 2 a b 3 a a a b 4 在進行比較的時候,會先判斷兩種字串的型別是否相等,再比較 在進行比較的時候,會先將字串型別轉化成相同...