سلام استاد
این کد زیر به نظرتون SRP رو نقض کرده
public function insert($table, $data)
{
$prantez = dbUtilities::makeInsertQuery($data);
$this->connection->query("INSERT INTO {$table}. {$prantez} "." VALUES " );
}
هدف از این متد اینه که کوئری insert ساخته بشه
متد makeInsertQuery اون قسمتی از متد insert که به این شکل هستش ==> (?, ?, ?, ?) رو میسازه
که من لاجیک این کد رو تو utilitie کلاس نوشتم و در insert فقط استفادش کردم.
در اخرم متد query رو کال کردم
(البته کدها ناقص هست و اجرا نمیشه فقط میخوام بدونم SRP رو نقض کرده یا نه )
<?php
class dbUtilities
{
public static function makeInsertQuery($data)
{
$count = count($data);
return "(" . rtrim(str_repeat("?,", $count), ",") . ")" . " VALUES " dbUtilities::makeValues($data);
}
}
سلام خدمت شما. هدف از SRP جلوگیری از انجام وظایف متفاوت برای کلاس هست که در این کدهای شما همچین چیزی مشاهده نمیشه. البته اون کلاس Utils جای بحث داره اما ربطی به SRP نداره.