我正在使用 codeigniter 库,并且陷入了困境。首先这是我的数组
Array (
[0] => Array (
[product_name] => some data
[product_slug] => some data
[price] => some Data...
[sell_price] => 2000.00
)
[1] => Array (
[product_name] => some data
[product_slug] => some data
[price] => some Data...
[sell_price] => 2000.00
)
)
现在这是我在控制器中的代码:
$this->load->model('product_model');
$data['product']=$this->product_model->get_product();
$this->load->view('show_product',$data);
这是我的型号代码
function get_product()
{
return $this->db->query("SELECT * FROM dt_product")->result_array();
}
最终我的视图代码
<div class="featured_right_gallery_bellow">
<ul class="product_list">
<?php foreach($product as $product)
{?>
<li>
<div class="pro_name"><?php echo $product['product_name'];?></div>
</li>
<?php
}?>
</ul>
</div>
现在我的问题是,我想只显示 product_name 的前 20 个字母......但这里显示的是全名......
我知道我可以写一个 mysql 代码SELECT LEFT(product_name,20),sell_price,price FROM dt_product
……但我不想那样做,因为表包含近 20 个属性,我必须多次更改查询……我想要的只是有人指出我关于如何使用偏移概念显示product_name的前20个字母的解决方案,
我尝试回显 $product['product_name'][20],但是使用 foreach 循环,它会抛出未定义索引的错误。