• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مقدار دادن به value توی gridview، مشکل با متغیر $data
#1
سلام دوستان و همیهنان گرامییی
ببنید
این مقدار برای value مشکلی نداره و اجرا می شه:

کد پی‌اچ‌پی:
'value'=>'$data->item_id' 

این مقدار هم که بهش می دم مشکلی نداره:

کد پی‌اچ‌پی:
'value'=>'$data->item->category_id' 



حالا این کلاس رو هم دارم که از تابع اش استفاده کردم:
کد پی‌اچ‌پی:
class Helper {
 
   public static function 
getString($inputList$spaceCount 3){
 
      return 
implode(str_pad(' '$spaceCount), $inputList);
 
   }
 

حالا وقتی کد اول رو توی تابع زیر استفاده می کنم بدون خطا اجرا می1

شه:
کد پی‌اچ‌پی:
'value'=> "Helper::getString(array(
   \"<a href='"
.Yii::app()->createUrl('/item/view').'&id=$data->item_id'."'>\".
      \"<img src='"
.Yii::app()->baseUrl."/image/categories/".'$data->item_id'"'>\".
   \"</a>\"         ));"



ولی وقتی کد دوم رو استفاده می ک1
نم :
کد پی‌اچ‌پی:
'value'=> "Helper::getString(array(            \"<a href='".Yii::app()->createUrl('/item/view').'&id=$data->item_id'."'>\".
               \"<img src='"
.Yii::app()->baseUrl."/image/categories/".'$data->item->category_id'"'>\".
            \"</a>\"         ))[php] 
;",
[/php]


خطای زیر رو می ده:


کد:
Object of class Item could not be converted to string



چرا اینجوریه؟
  پاسخ
تشکر شده توسط :
#2
خطا واضحه: Helper::getString داره آبجکت بر می گردونه

ببین اینجا شما باید یه استرینگ بدید که با eval پارس بشه و خروجی بیاد. در واقع شما یه string شامل دستورات پی اچ پی میدید.

اینجا ولی این کارو نمی کنید
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :
#3
ممنون
می شه همین رو برای کد خودم مثلا بزنید، یعنی استفاده از eval و ... که گفتید
  پاسخ
تشکر شده توسط :
#4
این رو تست بکن ببین کار می کنه:
کد پی‌اچ‌پی:
'value'=> "Helper::getString(array('<a href=\"'.Yii::app()->createUrl('/item/view', 'id' => $data->item_id).'\"><img src=\"'.Yii::app()->baseUrl.\"/image/categories/\".$data->item->category_id.'\"></a>))'" 
همه جوره اش رو داریم ظاهرن
  پاسخ
تشکر شده توسط :
#5
(۱۳۹۳ خرداد ۲۱, ۰۴:۰۹ ق.ظ)molana نوشته: این رو تست بکن ببین کار می کنه:
کد پی‌اچ‌پی:
'value'=> "Helper::getString(array('<a href=\"'.Yii::app()->createUrl('/item/view', 'id' => $data->item_id).'\"><img src=\"'.Yii::app()->baseUrl.\"/image/categories/\".$data->item->category_id.'\"></a>))'" 

Undefined variable: data

پس eval چى شد
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان