本文整理匯總了PHP中yii\base\Model::canSetProperty方法的典型用法代碼示例。如果您正苦於以下問題:PHP Model::canSetProperty方法的具體用法?PHP Model::canSetProperty怎麽用?PHP Model::canSetProperty使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類yii\base\Model
的用法示例。
在下文中一共展示了Model::canSetProperty方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: canSetProperty
/**
* @inheritdoc
*/
public function canSetProperty($name, $checkVars = true, $checkBehaviors = true)
{
if (parent::canSetProperty($name, $checkVars, $checkBehaviors)) {
return true;
}
try {
return $this->hasAttribute($name);
} catch (\Exception $e) {
// `hasAttribute()` may fail on base/abstract classes in case automatic attribute list fetching used
return false;
}
}
示例2: mapServiceAttributes
protected function mapServiceAttributes(BaseClient &$client, Model &$model)
{
$clientUserAttributes = $client->getUserAttributes();
// go through native client attributes
foreach ($clientUserAttributes as $attribute => $value) {
if ($model->canSetProperty($attribute) || in_array($attribute, $model->attributes())) {
$model->{$attribute} = $value;
}
}
// now find mapping for this service
$map = SocialMappings::mapForSocialService($this->socialServiceId);
foreach ($map as $modelAttribute => $socialAttribute) {
$value = [];
foreach ($socialAttribute as $attribute) {
$attribute = trim($attribute);
if (isset($clientUserAttributes[$attribute])) {
$attributeValue = trim($clientUserAttributes[$attribute]);
if (!empty($attributeValue)) {
$value[] = $clientUserAttributes[$attribute];
}
}
}
$value = implode(' ', $value);
if (!empty($value)) {
$model->{$modelAttribute} = $value;
}
}
}