引用傳參的錯誤報告與遞迴轉義

2022-08-10 11:39:12 字數 767 閱讀 6144

下面例子:

$age = 10;

function grow($age)

echo grow(&$age),'

'; // 11

echo $age,'

'; // 11

在上例中,呼叫函式後,全域性變數也受到了影響.

因為我們做"引用傳參",這種方式,違背"封裝"的概念,影響**的整潔.

因此,不推薦這麼做.

在php5.3,php.ini中,有乙個選項,如下

allow_call_time_pass_reference = off

如果為off,則函式引用傳參時,會報warning: call-time pass-by-reference has been deprecated如果為on,則不報warning

而在php5.4中,徹底廢除了函式引用傳參,使用函式引用傳參時,

報fatal error: call-time pass-by-reference has been removed

解決辦法:

1:allow_call_time_pass_reference = on 但這不是根本解決辦法,如果移植5.4,還是不行.

2:修改自己的**,不要函式引用傳參.

函式:

// 遞迴轉義陣列

function _addslashes($arr) else if(is_array($v))

}return $arr;

}

PHP的錯誤報告error reporting

設定錯誤訊息回報的等級。語法 int error reporting int level 傳回值 整數 函式種類 php系統功能 內容說明 本函式用來設定錯誤訊息回報的等級,引數 level 是乙個整數的位元遮罩 bitmask 見下表。value constant 1e error 2e warn...

GUN C中的錯誤報告

在c語言中,很多庫函式在呼叫失敗時都會返回特定的值。比如返回 1,空指標,eof等。但是這些值僅僅表示的呼叫失敗,並未給出詳細的錯誤資訊。如果想檢視詳細的錯誤內容,就要去檢視errno的錯誤 errno在errno.h中定義。關於errno的解釋 乙個int型別,可修改的左值 errno包含了系統中...

傳送錯誤報告errorlogs的函式

region format error message 格式化錯誤資訊 錯誤說明 public static string formaterrmsg string msgtext 詳細資訊 public static string formaterrmsg string msgtext,string...