我有一个 javascript 客户端将参数传递给服务器函数(我正在使用 ExtJS Direct)。有时客户端发送一个对象,有时它发送一个对象数组。
目前我正在使用这个 EnsureArray 函数来确保参数是一个数组,然后我这样做foreach
:
// Wraps a non array variable with an array.
function EnsureArray( &$aVar )
{
if ( !is_array( $aVar ) )
$var = array( $aVar );
}
function Destroy( $aRecords )
{
// $aRecords might be a single object or an array of objects. Ensure it's wrapped as an array.
$this->EnsureArray( $aRecords );
foreach ( $aRecords as $aRecord )
{
sql( "UPDATE Groups SET deleted = true WHERE id = $aRecord->id LIMIT 1" );
}
return array(
'success' => true,
);
}
有没有一种技巧,更简洁的方法,一条线可以做到这一点?
编辑:自从发布这个问题以来,我发现 ExtJS 可以选择发送包含在数组中的所有记录。