我无法从表中获取姓名

时间:2015-05-01 06:20:20

标签: php database codeigniter

我想从数据库表中只获取名称字段,但我无法做到。

class City extends MY_Controller{

    public function __construct(){
        parent::__construct();

    }
    function index(){

        $this->load->model('city_m');
        $cities = $this->city_m->get();

        foreach($cities as $c)
        {
            $newn[name] = $c->name;

        }
        echo 'done name: '.$newn.'<hr/>';
    }
}

5 个答案:

答案 0 :(得分:2)

示例代码中的大括号似乎不匹配。

将它放在你的foreach循环中

echo 'done name: '.$name.'<hr/>';

另外,请注意,您无法回显数组变量。

答案 1 :(得分:2)

如果您想在一个数组中使用所有城市名称....那么您可以使用此代码。

function index()
{
    $this->load->model('city_m');
    $cities = $this->city_m->get();

    foreach($cities as $c)
    {
        $cityName[] = $c->name;
    }
    echo '<pre>';
    print_r($cityName);
}

如果您想在视图中使用这些城市名称,则可以使用此代码

function index()
{
    $this->load->model('city_m');
    $cities = $this->city_m->get();

    foreach($cities as $c)
    {
        $data['cityName'][] = $c->name;
    }
    echo '<pre>';
    print_r($data['cityName']);
}

答案 2 :(得分:1)

请使用如下,

$model =  $this->load->model('city_m');
$cities = $model->name;

答案 3 :(得分:1)

你正在回应一个数组,试试下面的内容:

foreach($cities as $c) {
  $newn = $c->name;   
  echo 'done name: '.$newn.'<hr/>';           
}

答案 4 :(得分:1)

您在代码中提供的所有内容似乎都是错误的

1)$newn[name] = $c->name;你以错误的方式将它传递给数组

2)echo 'done name: '.$newn.'<hr/>';你正在调用数组而不是变量

因此您需要将代码更新为

foreach($cities as $c)
{
    $newn = $c->name;
    echo 'done name: '.$newn.'<hr/>';
}