我编写了一个长脚本,完全符合我的需要,但现在我发现函数的用处,所以我可以在其他脚本中使用它们.
我的脚本完全按照我最初编写的方式工作,并且与我实现我创建的函数的方式完美配合.
因为我是编写函数的新手,我从来没有看到过按照我的方式实现的,我不知道它是否是好的形式.
foreach($get_prefixes as $prefix) {
if($prefix['type'] == 'pre') {
$sql = "SHOW COLUMNS FROM `$prefix[table]` LIKE 'sku_%' ";
$sku_cols = $objDb->query($sql);
foreach($sku_cols as $col) {
echo $col['Field'] . '<br>';
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后就是我用创建的函数做的方式.它再次完美,但有一种"适当"的方式来做到这一点?
function getSku_($table) {
global $objDb;
$sql = "SHOW COLUMNS FROM `$table` LIKE 'sku_%' ";
$sku_cols = $objDb->query($sql);
return $sku_cols;
}
foreach($get_prefixes as $prefix) {
if($prefix['type'] == 'pre') {
foreach(getSku_($prefix['table']) as $col) {
echo $col['Field'] . '<br>';
}
}
}
Run Code Online (Sandbox Code Playgroud)
除了它之外,我没有看到该功能有任何问题naming.这不是不正确的,只是我理解它的惯例是遵循命名为abc_pqr或abcPqr或_abcPqr (for private functions).
编辑:$get_prefixes在使用foreach之前,我也没有看到定义在函数中.它来自哪里?
foreach($get_prefixes as $prefix) { //This line
Run Code Online (Sandbox Code Playgroud)
如果此功能在刚刚查询不同,"sku"并且"sku "那么你甚至不需要两个功能,只需使用一个OR查询(首选)或者两个查询,如果你想要两个结果集是独立的.