Вы конечно мастер объяснений, к тому же сложно телепатически объять всю структуру приложения и понять что где происходит, что там у родителя, где и как используются/вызываются методы и тп.
Но забавнее всего видеть слово рефакторинг и отсутвие желания исправить ужас:
db::query("update member set ncaptcha = 0 where id = :memberId", $memberId);
, эх..
public function destroy(int $memberId){
//Что тут и зачем хз, что там происходит ты не написал
parent::destroy();
try{
//Что такое db? PDO?
//Далее почти тупо копипаст из маст рид книги для новичоков Php right way
$stmt = db::prepare('update member set ncaptcha = 0 where id = :memberId');
$stmt->bindParam(':memberId', $memberId, PDO::PARAM_INT);
if(!$stmt->execute()){
throw new Exception($stmt->errorInfo()[2]);
}
}
catch (Exceprion $e ) {
throw $e;
}
//А и мы что-нибудь возвращаем? Если да, то выше нужно указать и тип возвращаемого значения у метода
}
ну и try нужно повесить на вызов метода:
//Где-то в далеких недрах кодинга
try {
$tvoyPeremenayaClass->destroy($memberId);
}
catch (Exception $e)
{
echo 'Прости Юра, мы все просрали ...' . $e->getMessage();
}
И это только примерно я написал и это только начало. Вообще нужно начинать с того что поставить php7.1