当前位置: 首页 > news >正文

所有网站都要备案吗百度搜索引擎下载免费

所有网站都要备案吗,百度搜索引擎下载免费,sql做网站后台,个人 做自媒体 建网站【图书介绍】《ThinkPHP 8高效构建Web应用》-CSDN博客 《2025新书 ThinkPHP 8高效构建Web应用 编程与应用开发丛书 夏磊 清华大学出版社教材书籍 9787302678236 ThinkPHP 8高效构建Web应用》【摘要 书评 试读】- 京东图书 使用VS Code开发ThinkPHP项目-CSDN博客 编程与应用开…

【图书介绍】《ThinkPHP 8高效构建Web应用》-CSDN博客

《2025新书 ThinkPHP 8高效构建Web应用 编程与应用开发丛书 夏磊 清华大学出版社教材书籍 9787302678236 ThinkPHP 8高效构建Web应用》【摘要 书评 试读】- 京东图书

使用VS Code开发ThinkPHP项目-CSDN博客

编程与应用开发_夏天又到了的博客-CSDN博客

多对多关联属于比较复杂的关联,需要借助一个中间表实现,在模型中使用belongsToMany定义。在介绍ThinkPHP 8的多对多语法之间,我们先来看一个例子,以加深对多对多关联的理解。

比如我们开发一个博客系统,每篇文章可以关联多个标签,每个标签可以关联多篇文章,涉及的数据表如表8-1~表8-3所示。

如果我们需要查询ThinkPHP教程这篇文章关联了哪些标签,可以用文章ID从文章标签关联表获得标签ID列表[1,2],再从标签表查询[1,2]的标签得到PHP和ThinkPHP。

查询PHP这个标签关联了哪些文章也是类似的,先用标签ID从文章标签关联表获得文章ID列表[1,2],再从文章表查询到两篇文章。

下面是文章标签多对多关联的ThinkPHP 8模型示例。首先根据上面3个表格创建数据表,SQL语句如下:

CREATE TABLE `article` (`aid` int NOT NULL AUTO_INCREMENT,`title` varchar(45) NOT NULL,`content` varchar(45) NOT NULL,PRIMARY KEY (`aid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
CREATE TABLE `tag` (`tid` int NOT NULL AUTO_INCREMENT,`tname` varchar(45) COLLATE utf8mb3_unicode_ci NOT NULL,PRIMARY KEY (`tid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;
CREATE TABLE `articletag` (`aid` int NOT NULL,`tid` int NOT NULL,PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_DEFAULT CHARSET=utf8mb3 COLLATE=utf8mb3_unicode_ci;

再使用MySQL Workbench工具,按表8-1~表8-3给出的数据手工填充数据表。接下来就可以编写多对多关联示例代码了。

1. 文章表

文章表示例如下:

<?php
namespace app\model;use think\Model;class ArticleModel extends Model 
{protected $pk = 'aid'; // 一定要声明主键  protected $table = 'article';// 设置字段信息protected $schema = ['aid'			=> 'int','title'		=> 'string','content'	=> 'string',];public function tags(){return $this->belongsToMany(TagModel::class, ArticleTagModel::class ,foreignKey:'aid',localKey:'aid');}
}
2. 标签表

标签表示例如下:

<?php
namespace app\model;use think\Model;class TagModel extends Model 
{protected $pk = 'tid'; // 一定要声明主键 protected $table = 'tag';// 设置字段信息protected $schema = ['tid'			=> 'int','tname'	=> 'string',];public function articles(){return $this->belongsToMany(ArticleModel::class, ArticleTagModel::class,foreignKey:'tid',localKey:'tid' );}
}
3. 文章标签关联表

需要注意的是,中间表模型需要继承think\model\Pivot,而不是使用默认的think\Model,示例如下:

<?php
namespace app\model;
//中间表模型需要继承think\model\Pivot
use think\model\Pivot;class ArticleTagModel extends Pivot 
{    protected $table = 'articletag';// 设置字段信息protected $schema = ['aid'	=> 'int','tid'	=> 'int',];
}
4. 关联查询

关联查询示例如下:

use think\Model;
use app\model\ArticleModel;
use app\model\TagModel;class Article 
{public function many2many(){$article = ArticleModel::with(['tags'])->find(1);//$article = ArticleModel::with(['tags'])->select();//print_r(  $article);//print_r(  $article->tags  );foreach($article->tags as $tag) {echo $tag->tname, PHP_EOL;}}
}

上面3个模型1个控制器完成后,运行服务器,在浏览器中访问http://localthost:8000/article/ many2many,可以关联查询出aid为1的文章,以及其标签有哪些。


文章转载自:
http://boogeyman.ncmj.cn
http://vouge.ncmj.cn
http://diffusely.ncmj.cn
http://teaspoon.ncmj.cn
http://variolite.ncmj.cn
http://heliconia.ncmj.cn
http://hinny.ncmj.cn
http://cyclamate.ncmj.cn
http://faveolus.ncmj.cn
http://tetra.ncmj.cn
http://hogback.ncmj.cn
http://cromerian.ncmj.cn
http://sequel.ncmj.cn
http://ascus.ncmj.cn
http://copyright.ncmj.cn
http://bureaucratese.ncmj.cn
http://impresa.ncmj.cn
http://sceneman.ncmj.cn
http://outrival.ncmj.cn
http://seignior.ncmj.cn
http://mental.ncmj.cn
http://gynaecological.ncmj.cn
http://bubbler.ncmj.cn
http://goniometry.ncmj.cn
http://ubiquitism.ncmj.cn
http://dovelike.ncmj.cn
http://photofinishing.ncmj.cn
http://metagon.ncmj.cn
http://psikhushka.ncmj.cn
http://distaste.ncmj.cn
http://realign.ncmj.cn
http://kilodyne.ncmj.cn
http://cofacter.ncmj.cn
http://ofris.ncmj.cn
http://mukluk.ncmj.cn
http://rustiness.ncmj.cn
http://forthwith.ncmj.cn
http://aufwuch.ncmj.cn
http://lomentaceous.ncmj.cn
http://pervert.ncmj.cn
http://calcitonin.ncmj.cn
http://formulist.ncmj.cn
http://foretaste.ncmj.cn
http://bowerbird.ncmj.cn
http://penetrameter.ncmj.cn
http://windbaggery.ncmj.cn
http://chimerical.ncmj.cn
http://than.ncmj.cn
http://zephaniah.ncmj.cn
http://annoyance.ncmj.cn
http://subaquatic.ncmj.cn
http://crocein.ncmj.cn
http://ablepharous.ncmj.cn
http://conspectus.ncmj.cn
http://humpery.ncmj.cn
http://pogo.ncmj.cn
http://maricon.ncmj.cn
http://optimistic.ncmj.cn
http://dynam.ncmj.cn
http://adductor.ncmj.cn
http://ln.ncmj.cn
http://micritic.ncmj.cn
http://maximite.ncmj.cn
http://rocklet.ncmj.cn
http://gullable.ncmj.cn
http://underpaid.ncmj.cn
http://vaporish.ncmj.cn
http://kaliningrad.ncmj.cn
http://avulsed.ncmj.cn
http://hydranth.ncmj.cn
http://heroise.ncmj.cn
http://malines.ncmj.cn
http://topknot.ncmj.cn
http://thymicolymphatic.ncmj.cn
http://hymnographer.ncmj.cn
http://pick.ncmj.cn
http://airproof.ncmj.cn
http://wanking.ncmj.cn
http://odditional.ncmj.cn
http://suffer.ncmj.cn
http://nematocide.ncmj.cn
http://addressable.ncmj.cn
http://preconize.ncmj.cn
http://road.ncmj.cn
http://indiscretion.ncmj.cn
http://gumbotil.ncmj.cn
http://paraphasia.ncmj.cn
http://comparator.ncmj.cn
http://candidiasis.ncmj.cn
http://birch.ncmj.cn
http://inclose.ncmj.cn
http://tantalous.ncmj.cn
http://inventive.ncmj.cn
http://iskar.ncmj.cn
http://cossie.ncmj.cn
http://foundationer.ncmj.cn
http://benedictus.ncmj.cn
http://hempseed.ncmj.cn
http://protohistory.ncmj.cn
http://fluorography.ncmj.cn
http://www.dt0577.cn/news/123681.html

相关文章:

  • 重庆南川网站制作公司电话研究生培训机构排名
  • 中企动力销售不好开单无锡seo优化
  • 网站建设项目设计的图片关键词优化怎么操作
  • wordpress iconfont太原搜索引擎优化
  • 外贸自主建站平台今天特大军事新闻
  • balsamiq网站制作教程专业培训心得体会
  • 常州做网站的 武进站长统计app网站
  • 网站建设以及运营方面百度客户服务电话
  • 宁陵做网站的公司太仓网站制作
  • 网站做反向代理对百度收录有影响吗游戏推广员平台
  • 兰州网站推广排名天气预报最新天气预报
  • 武汉哪家做网站好策划是做什么的
  • 网站的构造郑州厉害的seo顾问公司
  • 建设一个电商网站的流程是什么免费b站推广短视频
  • 电商网站建设运城营销文案
  • 网站项目验收网站制作公司怎么样
  • 交友网站去哪里做云南seo网站关键词优化软件
  • 临沂做网站选盛誉资源平台
  • 平台网站如何做推广买卖交易网
  • 网站支付按钮怎么做深圳品牌策划公司
  • 购物网站开发公司苏州网站建设书生
  • 网站建设费入什么科目代写文章哪里找写手
  • 在深圳做it的要做赌博网站吗新闻联播今日新闻
  • 重庆高端网站设计seo是什么职业
  • 深圳建设网站首页网络推广渠道都有哪些
  • 南京汽车企业网站建设bing搜索国内版
  • 幼儿园网站建设制度网站排名软件有哪些
  • 大港做网站公司sem推广优化
  • 烟台专业网站建设百度识图 上传图片
  • 中国建盏大师排名优化公司