Что такое правильный синтаксис для вызова функции рекурсивно в php

У меня есть функция, которая использует рекурсию для вызова себя, и мне нужно знать правильный синтаксис для вызова себя.

Примечание. Я использую метод объектно-ориентированного программирования, и функция исходит из файла класса.

Ниже моя функция

// Generate Unique Activation Code //********************************************************************************* public function generateUniqueActivationCode() { $mysql = new Mysql(); $string = new String(); $activation_code = $string->generateActivationCode(); // Is Activation Code Unique Check $sql = "SELECT activation_id FROM ". TABLE_ACTIVATION_CODES ." WHERE activation_code='$activation_code' LIMIT 1"; $query = $mysql->query($sql); if($mysql->rowCount($query) > 0) { // This function is calling itself recursively return generateUniqueActivationCode(); // <- Is this syntax correct in Oops } else { return $activation_code; } } 

Если код для его рекурсивного вызова

 return generateUniqueActivationCode(); 

ИЛИ

 return $this->generateUniqueActivationCode(); 

или если что-то другое, кроме этих двух способов.

Пожалуйста, дайте мне знать.