加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用Idiorm / Paris查询MySQL表

发布时间:2020-12-13 22:14:34 所属栏目:PHP教程 来源:网络整理
导读:我有一个基于巴黎的模型及其相对的“帖子”表: class Post extends Model { public static $_table = 'posts'; public static $_id_column = 'id';} 当我进行简单查询以获取所有帖子时: $posts = Model::factory('Post')-find_many();var_dump($posts); 这
我有一个基于巴黎的模型及其相对的“帖子”表:

class Post extends Model { 
    public static $_table = 'posts';
    public static $_id_column = 'id';
}

当我进行简单查询以获取所有帖子时:

$posts = Model::factory('Post')->find_many();
var_dump($posts);

这是我得到的回应:

array(13) {
  [0]=>
  object(Post)#34 (1) {
    ["orm"]=>
    object(ORM)#21 (19) {
      ["_table_name":protected]=>
      string(5) "posts"
      ["_table_alias":protected]=>
      NULL
      ["_values":protected]=>
      array(0) {
      }
      ["_result_columns":protected]=>
      array(1) {
        [0]=>
        string(1) "*"
      }
      ["_using_default_result_columns":protected]=>
      bool(true)
      ["_join_sources":protected]=>
      array(0) {
      }
      ["_distinct":protected]=>
      bool(false)
      ["_is_raw_query":protected]=>
      bool(false)
      ["_raw_query":protected]=>
      string(0) ""
      ["_raw_parameters":protected]=>
      array(0) {
      }
      ["_where_conditions":protected]=>
      array(0) {
      }
      ["_limit":protected]=>
      NULL
      ["_offset":protected]=>
      NULL
      ["_order_by":protected]=>
      array(0) {
      }
      ["_group_by":protected]=>
      array(0) {
      }
      ["_data":protected]=>
      array(4) {
        ["id"]=>
        string(1) "1"
        ["title"]=>
        string(10) "Primo post"
        ["content"]=>
        string(11) "prova prova"
        ["published"]=>
        string(1) "0"
      }
      ["_dirty_fields":protected]=>
      array(0) {
      }
      ["_is_new":protected]=>
      bool(false)
      ["_instance_id_column":protected]=>
      string(2) "id"
    }
  }
  etc...

现在的问题是:我如何访问数据?因为我无法访问它.难道我做错了什么?

解决方法

原始答案

您可以通过以下方式执行此操作:

foreach($posts as $post) {
    echo $post->title;
}

正如您所看到的,我首先遍历记录然后打印每个记录的标题.可以通过以下方式访问结果的受保护数据属性中的everthing:

array(4) {
    ["id"]=>
    string(1) "1"
    ["title"]=>
    string(10) "Primo post"
    ["content"]=>
    string(11) "prova prova"
    ["published"]=>
    string(1) "0"
  }

所以你可以通过调用获取内容:

echo $post->content;

作为一个旁边,编写巴黎和Idiorm的人杰米曾经和我一起工作,所以如果你有任何其他问题请告诉我.

在评论中回答问题

您可以通过以下方式将其编码为JSON:

foreach($posts as $post) {
    echo json_encode($post->as_array());
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读