2014-12-05 37 views
1

从来就以下查询:开捕致命错误:对象无法被转换成字符串

ORM::for_table('producto')->where_like('nombre_producto',"%{$valor}%")->find_array(); 

我得到下面的查询

array (size=1) 
    0 => 
    array (size=11) 
     'id' => string '1' (length=1) 
     'nombre_producto' => string 'Calabacin blanco' (length=16) 
     'nombre_latin' => null 
     'peso' => string '100.00' (length=6) 
     'descatalogado' => string '0' (length=1) 
     'dimensiones' => null 
     'descripcion' => null 
     'cantidad_stock' => string '100' (length=3) 
     'precioVenta' => string '1.00' (length=4) 
     'gama_id' => string '2' (length=1) 
     'proveedor_id' => string '1' (length=1) 

我想显示定界符的值选择,我做的:

$optionproducts = function($productos) 
     { 
      $data=""; 
      foreach($productos as $producto) 
      { 
       $data.="<option value='{$producto['id']}'>{$producto['nombre']}</option>"; 
      } 
      return $data; 
     }; 

我的字符串定界符是:

$cadena = <<<EOD 
    <form class='form-horizontal' method='POST' role='form' action={{ urlFor('lineorder_create',{'id':{\$productos['id']}}) }}> 
    <h2>Listado de {$str}</h2> 
    <div class='form-group'> 
     <label class='col-md-4 col-xs-4 control-label' for='selectproductname'>Nombre producto:</label> 
     <div class='col-md-5 col-xs-5'> 
      <select name='selectproductname' class='form-control'> 
       {$optionproducts} 
      </select> 
     </div> 
    </div> 

我得到的是,在第53行中的函数值不能转换为字符串

Catchable fatal error: Object of class Closure could not be converted to string in C:\wamp\www\viver\public\products_ajax.php on line 53 

The line 53 in my products_ajax.php is in the heredoc {$optionproducts} 

我怎么能解决这个错误?由于

回答

1

出现这种情况的原因是你的实际呼应你的闭合$optionproducts,它是封闭的

对象,而不是你需要调用它像一个功能$optionproducts($parameter)

$cadena = <<<EOD 
     <form class='form-horizontal' method='POST' role='form' action={{ urlFor('lineorder_create',{'id':{\$productos['id']}}) }}> 
     <h2>Listado de {$str}</h2> 
     <div class='form-group'> 
      <label class='col-md-4 col-xs-4 control-label' for='selectproductname'>Nombre producto:</label> 
      <div class='col-md-5 col-xs-5'> 
       <select name='selectproductname' class='form-control'> 
        <!-- you need to call it --> 
        {$optionproducts($productos)} 
       </select> 
      </div> 
     </div> 
相关问题