我如何简化此功能-从数组返回键值?

问题描述 投票:0回答:1

我编写了以下函数,该函数返回作为cPanel帐户的帐户前缀的键的值。[prefix] ='oneclick _'

该函数有效,但我只是一个初学者,我敢肯定有一种更简便,更好的方法来编写此函数。

<?php
// Get data from cPanel API
$array = $cp_db_restrictions['cpanelresult']['result']['data'];

//Pass array of $data to function
db_prefix( $array );

//Function accepts array of $data
function db_prefix( $array ) {
  if( count( $array ) > 0 ) {
      return $array['prefix'];
  } else {
      return "No prefix";
  }
}
?>

<?php echo db_prefix($array); ?>

该函数回显“ oneclick _”

编辑:这是返回数组的代码:

$cp_db_restrictions = $cpanel->uapi(
      'Mysql', 'get_restrictions'
  );

但是,我不太确定如何将其添加到函数中。当我尝试时,出现以下错误消息:

注意:未定义的变量:数组位于...

致命错误:未被捕获的错误:调用成员函数uapi()时在null上...

SOLUTION *

所以,感谢尼克的回答,这里是解决方案。您必须确保在文档顶部和相同的PHP标记中声明cPanel类。

<?php
include("/usr/local/cpanel/php/cpanel.php"); // Instantiate the CPANEL object.
$cpanel = new CPANEL();

function db_prefix($cpanel) {
      $cp_db_restrictions = $cpanel->uapi('Mysql', 'get_restrictions');
      $array = $cp_db_restrictions['cpanelresult']['result']['data'];
      return $array['prefix'] ?? 'No prefix';
} ?>
<?php echo db_prefix($cpanel); ?>
php arrays function
1个回答
1
投票

在PHP7中,您可以只使用空合并运算符??

??
© www.soinside.com 2019 - 2024. All rights reserved.