我在任何空的$ li上一直收到错误matrix = np.random.random_integers(0,100,(10,6,8))
image_view = itk.GetImageViewFromArray(matrix.astype('Float32'))
medianImageFilter = itk.MedianImageFilter.New(image_view, Radius = 3)
medianImageFilter.Update()
medianImage = medianImageFilter.GetOutput()
newMatrix = itk.GetArrayViewFromImage(medianImage)
,是否有更快的方式不插入空白列/字段?除了Undefined property: stdClass::$
之外,我仍然希望它插入非空的。
if ($li->company != "")
答案 0 :(得分:2)
在Class构造函数中,您可以为所有属性设置默认值。
如果您无法修改构造函数,则可以使用ternary operators,一行if
和else
变体
例如:
$insert['company'] = (isset($li->company))? $li->company : "";
与
相同if(isset($li->company))
$insert['company'] = $li->company;
else
$insert['company'] = "";
答案 1 :(得分:2)
使用isset()
测试属性是否已设置,如果不是,则使用默认值。
$insert['company'] = isset($li->company) ? $li->company : "";
为避免大量重复,您可以使用循环:
foreach (['company', 'first', 'last', ...] as $field) {
$insert[$field] = isset($li->{$field}) ? $li->{$field} : "";
}
答案 2 :(得分:0)
将其包裹在空的测试中:
if($li->zip) {
$insert['postcode'] = $li->zip;
}