脚本宝典收集整理的这篇文章主要介绍了php – T_PAAMAYIM_NEKUDOTAYIM覆盖CButtonColumn后出错,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Parse error: Syntax error,unexpected T_PAamAYIM_NEKUDOTAYIM in /home/xxx/public_htML/PRotected/components/GridView/XCButtonColumn.PHP on line 65
我读到了什么意思是“T_PAAMAYIM_NEKUDOTAYIM”,它的意思是“::”
link here
,但我不明白我能做些什么来解决问题.
第65行:
if (is_array($modelClass::model()->PrimaryKey))
这是我的代码:
<?PHP class XCButtonColumn extends CButtonColumn { public $htmlOptions = array('class' => 'center vcenter'); public $viewButtonOptions = array('class' => 'BTn btn-default tip view'); public $viewButtonImageUrl = ''; public $viewButtonHtml; public $updateButtonOptions = array('class' => 'btn btn-default tip update'); public $updateButtonImageUrl = ''; public $updateButtonHtml; public $deleteButtonOptions = array('class' => 'btn btn-default tip delete'); public $deleteButtonImageUrl = ''; public $deleteButtonHtml; public $showImage = false; public $showHtml = true; protected function renderButton($id,$button,$row,$data) { if (isset($button['visible']) && !$this->evaluateExPression($button['visible'],array('row' => $row,'data' => $data))) return; $label = isset($button['label']) ? $button['label'] : $id; $url = isset($button['url']) ? $this->evaluateExpression($button['url'],array('data' => $data,'row' => $row)) : '#'; $options = isset($button['options']) ? $button['options'] : array(); if (!isset($options['tITle'])) $options['title'] = $label; if ($this->showImage) { if (isset($button['imageUrl']) && is_string($button['imageUrl'])) { echo CHtml::link(CHtml::image($button['imageUrl'],$label),$url,$options); } else { echo CHtml::link($label,$options); } } else { if (isset($button['html']) && is_string($button['html'])) { echo CHtml::link($button['html'],$options); } else { echo CHtml::link($button['html'],$options); } } } protected function initDefaultButtons() { if ($this->viewButtonLabel === null) $this->viewButtonLabel = Yii::t('zii','View'); if ($this->updateButtonLabel === null) $this->updateButtonLabel = Yii::t('zii','Update'); if ($this->deleteButtonLabel === null) $this->deleteButtonLabel = Yii::t('zii','Delete'); if ($this->viewButtonImageUrl === null) $this->viewButtonImageUrl = $this->grid->baseScriptUrl . '/view.png'; if ($this->updateButtonImageUrl === null) $this->updateButtonImageUrl = $this->grid->baseScriptUrl . '/update.png'; if ($this->deleteButtonImageUrl === null) $this->deleteButtonImageUrl = $this->grid->baseScriptUrl . '/delete.png'; if ($this->viewButtonHtml === null) $this->viewButtonHtml = '<i class="icon-zoom-in iconwhite"></i>'; if ($this->updateButtonHtml === null) $this->updateButtonHtml = '<i class="icon-edit iconwhite"></i>'; if ($this->deleteButtonHtml === null) $this->deleteButtonHtml = '<i class="icon-trash iconwhite"></i>'; if ($this->deleteConfirmation === null) $this->deleteConfirmation = Yii::t('zii','Are you sure you want to delete this item?'); $modelClass = $this->grid->dataProvider->modelClass; $controller = strtolower($modelClass); if (is_array($modelClass::model()->primaryKey)) $paramExpression = '",$data->primaryKey)'; else $paramExpression = '",array("id"=>$data->primaryKey))'; foreach (array('view','update','delete') as $id) { $button = array( 'label' => $this->{$id . 'ButtonLabel'},'url' => 'Yii::app()->urlManager->createUrl("' . "$controller/$id$paramExpression",'imageUrl' => $this->{$id . 'ButtonImageUrl'},'html' => $this->{$id . 'ButtonHtml'},'options' => $this->{$id . 'ButtonOptions'},); if (isset($this->buttons[$id])) $this->buttons[$id] = array_merge($button,$this->buttons[$id]); else $this->buttons[$id] = $button; } if (!isset($this->buttons['delete']['click'])) { if (is_string($this->deleteConfirmation)) $confirmation = "if(!confirm(" . CJavaScript::encode($this->deleteConfirmation) . ")) return false;"; else $confirmation = ''; if (Yii::app()->request->enableCsrfValidation) { $csrfTokenName = Yii::app()->request->csrfTokenName; $csrfToken = Yii::app()->request->csrfToken; $csrf = "\n\t\tdata:{ '$csrfTokenName':'$csrfToken' },"; } else $csrf = ''; if ($this->afterDelete === null) $this->afterDelete = 'function(){}'; $this->buttons['delete']['click'] = <<<EOD function() { $confirmation VAR th = this,afterDelete = $this->afterDelete; jquery('#{$this->grid->id}').yiiGridView('update',{ tyPE: 'POST',url: jQuery(this).attr('href'),$csrf success: function(data) { jQuery('#{$this->grid->id}').yiiGridView('update'); afterDelete(th,true,data); },error: function(XHR) { return afterDelete(th,false,XHR); } }); return false; } EOD; } } }
提前致谢
以上是脚本宝典为你收集整理的php – T_PAAMAYIM_NEKUDOTAYIM覆盖CButtonColumn后出错全部内容,希望文章能够帮你解决php – T_PAAMAYIM_NEKUDOTAYIM覆盖CButtonColumn后出错所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。