当前位置:首页>戏曲>陈志勇 | 戏曲入别集与明清“小词”传世的文人取舍

陈志勇 | 戏曲入别集与明清“小词”传世的文人取舍

  • 2026-06-26 05:26:54
陈志勇 | 戏曲入别集与明清“小词”传世的文人取舍

戏曲入别集与明清“小词”传世的文人取舍

文/陈志勇

中山大学中文系陈志勇教授

摘 要 :明清之际,大量文人参与戏曲创作,然其对于是否将戏曲视作文学作品、收录于个人别集,态度取舍殊为不同。别集编刻刊行之际,编纂者往往在戏曲入集问题上心存犹疑,别集中普遍出现的戏曲“存目未刻”现象,便是此种复杂心态的外化表征。除却刻书成本等客观因素,戏曲难以正式入集,本质受制于正统文体层级观念、戏曲“小道末技”的固化认知以及曲学评价偏低的历史语境。考察戏曲入别集这一特殊文化现象,有助于厘清明清文人戏曲思想,及其与外部文化生态、时代文学观念之间的内在关联。

关键词 戏曲入别集;戏曲传世;文人曲家;文学观念史

明清时期戏曲受到文人的关注,他们走近戏曲,不仅顾曲自娱,而且斟律填词,成为剧本创作的重要力量。那么,个人的戏曲作品如何行世?一般而言,有如下几种情况:一是单行本,每个剧本单独刊行。二是汇刻成戏曲专集,学界称为戏曲别集,如吴炳《粲花斋五种曲》。三是将戏曲作品刻入诗文别集中,即戏曲入别集现象,这正是本文讨论的话题。众所周知,诗文别集多汇聚文人作家的诗词文赋,戏曲作为后兴的文体,正统文学观念并不将戏曲作品看作文章,即如王国维所言:“独元人之曲,为时既近,托体稍卑,故两朝史志与《四库》集部,均不著于录;后世硕儒,皆鄙弃不复道。”不仅元曲不见载于“两朝史志与《四库》集部”,明清戏曲亦被官学话语体系排斥在外。正是基于这样一种正统文学观念和文体评判体系,文人在编刻自己或亲友别集时如何取舍戏曲,为考察明清文人戏曲文体观念的演进提供了新视角。

一、明清戏曲入别集现象的通代考察

戏曲入别集作为一种收录、保存戏曲作品的做法,在文学别集的编纂史上是较晚出现的。嘉靖四十五年(1566)冯惟敏手订的个人曲集《海浮山堂词稿》,卷4收入5套散曲和《玉殿传胪》《僧尼共犯》2部杂剧,是明代最早将戏曲编入别集的个案。杂剧虽居于词稿之末,但说明冯惟敏将戏曲(杂剧)与散曲(小令、散套)同等看待,皆视为“曲”。冯惟敏的这种做法,或与明前中期杂剧作为“正统剧种”的特殊地位不无关系,对后世戏曲入集具有导夫先路的示范意义。

万历年间戏曲入别集最具影响力的是徐渭(1521—1593)的《四声猿》和汤显祖“临川四梦”入诗文集的例子,诚如清人俞楷所言:“传奇虽小道,而传世最难。自《元人百种》外,如《临川四梦》、天池《四声猿》,其最著矣。”《四声猿》约作于万历七年(1579)或稍前,较早行世的版本有万历十六年(1588)所刻印的单行本。徐渭去世七年后的万历二十八年(1600),门人商维濬等合编《徐文长三集》(凡29卷),全书之末附刻《四声猿》杂剧。商维濬《刻徐文长集原本述》记载刻入徐剧的原委:袁宏道激赏《四声猿》称其“才思奇爽,一种超轶不羁之致,几空千古”,遂嘱咐商维濬务求照原貌刊印,“慎勿描画失真,为世大痛”。徐渭诗文集的另一版本系统是万历四十二年(1614)钟人杰重编《徐文长文集》,中国国家图书馆有藏,凡30卷,末卷为“杂著”,目录之末有“四声猿附”字样,内封署“本衙重赀构样,择工精刊,翻行必治,附《四声猿》”,正文也有四部杂剧,卷首有钟人杰撰《四声猿引》。此外,天启年间董其昌序刻本《刻徐文长先生秘集》(12卷)、张汝霖序刻本《徐文长逸稿》(20卷),皆未收录《四声猿》。与徐渭戏曲入别集情况类似的是汤显祖诗文集。明末清初,坊间编辑刊刻多种汤氏诗文集,但仅有崇祯九年(1636)昆山沈际飞将汤氏生平所作汇刻《独深居点定玉茗堂集》(又名《玉茗堂选集》),末附《玉茗堂四种曲》8卷,每剧前各拟《题词》一篇,介绍其人物、情节及价值。可见,尽管明万历年间,文人热衷杂剧、传奇的编撰,迎来了戏曲史上的又一个繁荣期,但将戏曲作品收入别集仍为少见。

▲徐谓《四声猿》插图(明万历黄伯符刻本

天启、崇祯年间,戏曲入别集的情形渐多,如卓人月《蕊渊集、蟾台集》(合刻本)附刻传奇《花舫缘》,王九思《重刻渼陂王太史先生全集》附刻杂剧《杜甫游春》及《中山狼》院本,茅维《茅洁溪集》附刻杂剧《春明祖帐》《云壑寻盟》、林章《林初文诗文全集》刻入传奇《观灯记》《青虯记》,等等。这一现象正说明,由于有了《徐文长三集》《徐文长文集》收入《四声猿》以及《独深居点定玉茗堂集》附刻《玉茗堂四种曲》的先例,在诗文集之末附刻杂剧、传奇,渐渐成为文人保存自己戏曲作品的一种选择。在此时还出现“专题性别集”收录戏曲的情况,如崇祯九年(1636)叶绍袁将次女叶小纨的剧作《鸳鸯梦》收入《午梦堂集》(详后)。又如,明代文人王应遴将杂剧《衍庄新调》和自己的诗集、乡约、奏疏一起编为《王应遴杂集》,并将杂剧列于该集之首。

总体来看,戏曲入别集在明代还没有形成风气,戏曲生态的欣欣向荣态势,最终落实到文人的编刻实践上,则是清前中期。具体而言,顺治朝有3部,分别是叶承宗《泺涵》,徐士俊《雁楼集》,王鑨《大愚集》;康熙朝有10部,分别是丁耀亢《丁野鹤集》,廖燕《二十七松堂集》,黄周星《夏为堂别集》,尤侗《西堂全集》,沈玉亮、吴陈琰《凤池集》,叶奕苞《锄经堂集》,陈梦雷《松鹤山房诗集》,张韬《大云楼集》,宋琬《安雅堂集》,赵进美《清止阁集》;乾隆朝有6部,分别是永恩《诚正堂稿》,谢堃《春草堂集》,黄图珌《看山阁全集》,钱维乔《钱竹初集》,龙燮《和苏集》,张晋《戒庵诗草》。这些诗文集所编入的戏曲,基本稳定地居于各体文学之末。到了清末,戏曲的地位有所提升,脱离附录全集之末的位置,而成为全集的独立之一种,如胡薇元(1850—1924)《壶庵五种曲》收杂剧3种,散套2种。这些戏曲、散曲作品,是胡氏全集《玉津阁集》12种中的第6种,它们既是全集的组成部分,也可单独成卷,形成独特的书籍刊刻形态。

此外,清代具有纪念意义的专题性别集有时也会收录戏曲,如清初刻本《陈素素集》即将《秦楼月传奇》刻入其中;清康熙年间顾宸编的《遗爱集》收入演绎常熟县令于宗尧德政事迹的《虞山碑》与《岘山碑》两部杂剧及祭文、诔辞、杂剧、散曲等多种作品以作纪念。凡此皆可表明,带有表彰、怀恋属性的戏曲,更易被弱化文体偏见,收录于纪念性文集中。

要之,戏曲入别集呈现由微至著的渐进态势。明人编刻徐渭、汤显祖等戏曲名家别集之时,收录其戏曲作品,形成“名家名作”的示范效应;受此影响,明末清初愈来愈多文人将戏曲纳入个人诗文别集。至清末,戏曲入集已成普遍现象,意味着它作为一种文学样式,不再是“娱之即弃”的工具性文本(或技艺性文本),而是能传之后世的文学遗产。

汤显祖(1550—1616)

二、明清戏曲入别集的文人正面心态

在明清时期为数众多的曲家群体中,有些人仅是基于某种因缘或感触走进戏曲世界,撰剧和娱曲的时间很短,如明人黄惟楫创作《龙绡记》,三日乃成。因此,我们所讨论的戏曲入别集的话题实际上基于这样一个前提——戏曲在剧作家心目中具有较大的分量和文体认同感,不再是可有可无的“游戏笔墨”,而是承载了其才情、思想与情感的重要活动。这时,文人将其纳入旨在传世的别集,寄托了“立言不朽”的愿望。

《西堂全集》为作者尤侗亲手编次,初刻于康熙二十四年(1685),全集之末附刻6种戏曲作品。在传统文学话语体系观照下,对于在全集中收录戏曲,尤侗的取舍难谓有据,故他在《西堂文集自序》和《读离骚自序》两次解释《读离骚》曾进御览,顺治帝“益读而善之”,遂“命教坊内人装演供奉”的特殊经历,以构建《西堂全集》选入其戏曲作品的逻辑理据。当然,倚皇恩而自荣,只是原因之一。尤侗在“全集”中收齐自己的曲作,还有更深层次动机是以曲传世、成不朽之业。他在《百末词》卷6有段话透露出其流连“小词”的微妙心态,一方面以“聊存一二,以志过焉”来堵住世人对他流连院本杂曲的指摘,另一方面又抬出明代著名曲家汤显祖、王九思,以他们有关戏曲创作的妙语来引证“立言不朽”的价值取向。

戏曲入别集在传世不朽的同时,往往寄寓编刻者深厚情感。更多情形是,文人全集的编纂大都由逝者亲属、门生故友于身后编订刊刻,这种亲人之爱、师生之情或朋友之谊,无不含蕴着情感的怀念和延续,让作者的文情与曲才得以永久流传,皆源自立言不朽之愿念。典型的例子是叶绍袁在崇祯年间编纂《午梦堂集》时,将次女叶小纨的剧作《鸳鸯梦》收入其间。该合集汇录叶绍袁、沈宜修夫妇及其女叶小鸾、叶小纨之作,本为家人唱和品鉴、留存忆念的纪念文集。叶小纨出身曲学世家,为沈璟孙妇,其母沈宜修亦是沈璟从女,母女二人皆具备不俗的戏曲素养。其舅沈君庸称誉叶小纨“独出俊才,补从来闺秀所未有”,尽显长辈对其剧作的赏识;而叶绍袁将《鸳鸯梦》录入家集,更是饱含对爱女的深切眷恋。叶绍袁《愁言·序》交代了编纂此集真正目的:“如此,幸览者哀其志,而金石焉,死不朽矣。”“能传”表明它的价值,能“不朽”则成就其名。时距今日,已历400多年,叶小纨的剧作《鸳鸯梦》确因刻入《午梦堂集》而得以流传后世,其父叶绍袁刻书的初愿得以达成。类似的是,清初吴颖见资助徐士俊《雁楼集》出版,在集尾收录徐氏杂剧《春波影》《络冰丝》两种,他在序中着意讲道“世之能文章之士,无不自爱其文章之传,故有名满天下”,点出立言不朽的本质。

叶绍袁《午梦堂集》载叶小纨剧作《鸳鸯梦》(明崇祯九年叶氏谢斋家刻本)

汇集文学作品的别集是否编入戏曲作品,还取决于编纂者对戏曲文体的认识。有些文学家在世时遴选自己创作的各类文字汇聚成集以付剞劂,他们或出于敝帚自珍的意念,或秉持剧曲足以传世的想法,把戏曲刻入自己的集子,成为自刻文集的重要组成部分。乾嘉时期李斗(1749—1817)在晚年将《奇酸记》《岁星记》两部戏曲传奇,与《扬州画舫录》《永报堂诗集》《艾塘乐府》一起辑为《永报堂集》刊行。对于《永报堂集》收入戏曲,好友洪梧在《永报堂集序》中,将李斗的传奇戏曲《岁星记》隐含于经书图典之间,并以博物嗜学予以通论,以调和与“穷经术为文章”正统观念的冲突。嘉庆八年(1803),李斗在《岁星记传奇》卷首的《题辞》进一步道出了将自己的两部传奇刻入《永报堂集》的原因,是二剧“无一处提纲过脉不从经营意匠而成,无一出琢句炼字不从刻骨镂心而出”,故而以之“并传不朽”。

剧作家逝世后,其别集的编纂者都或多或少面对戏曲入集的舆论压力,故家庭核心成员的态度和立场极为重要。明代遗民叶承宗(1602—1648),在家族中享有较高威望,其身故后,由其弟叶承祧、子叶青箱、侄叶青藜共同辑校文集《泺函》,尽数收录其各类文章,全集末卷(卷10)为乐府、杂剧(实际仅刻入杂剧4种)。又如康熙间海宁文士张韬(字权六),“偶阅青藤遗集,仿彼《四声》”,成《续四声猿》。张韬去世后,家人刊刻其文集《大云楼集》,将《续四声猿》4种曲一并收录。作为《大云楼集》的编纂人,其弟张敷对哥哥治曲持认同的态度,坚定地将兄长戏曲收入别集。无独有偶,乾隆年间钱维乔曾作《乞食图》《鹦鹉媒》传奇2种,1806年钱维乔辞世,其兄维城(乾隆十年乙丑科状元)为《竹初乐府》第二种《鹦鹉媒》作序时指出,钱维乔曾偕“所著《碧落缘》《鹦鹉媒》传奇二种示予”。依托兄长的支持,钱氏子侄在编刊其诗文集《钱竹初集》时,将戏曲一并刻入。

若曲家在家族中享有崇高的威望,后世子孙出于崇敬之情,将先人的每一篇作品视为珍本、精品,戏曲自然也会被刻入诗文集。明代谏臣杨继盛,在嘉靖三十二年(1553)力劾严嵩“五奸十大罪”,却遭诬陷下狱,两年后死于狱中,清顺治间文人丁耀亢为表彰其事迹而撰《表忠记传奇》。同治十一年(1872),任湖北道员的丁守存(丁耀亢七代侄孙)据顺治刻本《杨忠愍公全集》重刻,并将《表忠记》附刻于内,以表彰杨继盛以身除奸的光辉事迹。又如崇祯进士黄周星(1611—1680)于康熙十九年(1680)七月绝食而亡,八年后其子将他的遗世文字辑为《夏为堂别集》出版,在卷末“辞余”收有《试官述怀》《惜花报》两部杂剧。黄周星忠义殉国的高洁品性,很大程度消解了世人对其流连戏曲的微词,故而两部杂剧顺理成章地入集。

在戏曲史上还有一种比较特殊的戏曲入别集的情况,是文人专为接驾而作的迎銮承应戏。尽管这些作品在艺术上乏善可陈,但由于曾特供皇帝御览,将之收入集子中,足以自荣而传世。乾隆年间厉鹗自编文集《樊榭山房全集》,有意收入自撰戏曲《群仙祝寿》《百灵效瑞》。对于这两部承应戏,厉鹗在《全集》第九册“轶事”中叙述原委:乾隆十六年(1751)三月,皇上南巡,“偕吴城撰迎銮新曲进呈”。全祖望亦在文集序言中称,此二种迎銮新曲“非世俗之乐府所可语”,意指它们格调高雅华贵。颇有意味的是,乾隆刻本《樊榭山房全集》未刊这两种承应戏(也有可能是有刊而脱落),直至光绪年间,后学汪曾唯在藏书家丁丙(1832—1899)协助下,将二剧“附刻于集外诗词之后”。类似的情况还有,康熙四十四年(1705)沈玉亮、吴陈琰合编应制诗集《凤池集》,末附张潮杂剧《南北双调·凯旋曲》。对此,《四库全书总目》卷194评价道:“末附杂剧一折,则自古所无之创例也。”沈、吴二人之所以将杂剧《凯旋曲》编入《凤池集》,也是基于此剧为歌颂皇帝文治武功的承应之作。

万鹗《樊榭山房全集》(清光绪十年钱塘汪氏振绮堂刻本)

别集是文人一生所撰文字的汇聚,亦是其文学生命和人生体验的总结。很多时候,刊印个人的别集成为文人的终极愿景。将戏曲编入别集,既是对文学作品的珍视,亦是对作者的尊重,反映出编者以戏曲传世不朽的正面心态。

三、戏曲“存目而未刻”现象及成因

如果说文人出于传世不朽的心理而将戏曲编入别集,是较为常见的情态;那么编刻过程中多方权衡下的犹疑、妥协与反复,则构成更为特殊的刊刻现象与文学史图景,映照出编集者的隐微心态,更值得探讨。

为达成这一研究目标,笔者翻阅了大量明清文人别集,发现一个独特的现象——“存目而未刻”,即卷首总目上列有作者所撰戏曲的名目,但实际存世的版本却未见这些戏曲文本。出现这一现象可能有如下几种情况:一是限于出版资金或其他条件,相当数量的作品未能结集出版,消失在历史的尘埃之中。如明清之际的陆舜(1614—1692)自编《双虹堂文集》总目,其中列传奇7种。清初文人夏荃“顾欲求刻本全集,不可得”,后来从友人那里得到残本,才知全集未刻竣。自然,陆舜所撰7种传奇,皆散佚而未付梓,今仅从焦循《剧说》知其中2种之名(《一帆记》《双鸳记》)。二是戏曲多附于诗文集之尾,它们与诗文集之间形成“可合亦可分”的特殊状态,很多时候脱离别集而自成一书,只在别集目录上留下剧目的痕迹。清代出现大量的戏曲别集,不少就是从全集中脱落出来的。三是人为因素导致“存目而未刻”,而这正是本节讨论的话题。

事实上,文人别集初刻本中的戏曲作品存目而实未刻的情况,若非有相关文献的记载,已难以揣测汇编者的初衷,但后人在重修时的补述为蠡测初刻本“存目未刻”的原因提供了一些线索。无锡人嵇永仁(1627—1676)撰有《扬州梦》《珊瑚鞭》《双报应》传奇和《续离骚》杂剧,康熙五十七年(1718)其子嵇曾筠在编《抱犊山房集》时就未收这些戏曲作品,仅在目录中留有“填词三种:续离骚,双报应,扬州梦,另刻”的说明文字。至于原刻本为何没有收入嵇氏的3种戏曲,已难揣测。但值得注意的是,雍正年间,其家人重刊全集,将《扬州梦》《双报应》《续离骚》3种戏曲共6卷以附录的形式收录,与诗文合编为12卷。嵇永仁因未追随耿精忠反清,而被耿氏囚禁三年,《续离骚》即为狱中所作。史载其“至是悲思愤郁作《续离骚》《双报应》词,皆极淋漓沉痛”,鲜明塑造出作者矢志不渝、誓死不叛的忠义形象。嵇永仁的忠义事迹被家族奉为后世教化的道德范本,而承载先祖精神气节的戏曲作品,或是后世子孙重编全集时收入其中的一个重要原因。

嵇永仁(1627—1676)

在正统观念影响下,别集的编纂者在收入戏曲以完整保存先辈“文字”的同时,对于是否会带来负面影响往往会反复考量,继而作出恰当的取舍。明末清初江西文人邱维屏曾创作杂剧《黄池三段梦》,其子邱成和于康熙年间为父编刻《邱邦士文集》时,在最后一卷(即第18卷)拟收杂剧作品,卷首总目的小字注“杂剧,俟刻”即可证明。然而,实际情况是“俟刻”而未刻,道光十七年(1837)邱氏六世孙邱潾重刻是集时,对此特意作了说明:“原刻虚存十八卷之名,以俟搜罗,今止补入此篇。”此例说明,后裔刊刻先人别集并收录其戏曲作品,在一定程度上是祖先崇拜与正统文体观念相互博弈、调和妥协的结果。

毋庸置疑,戏曲能否入编别集,编纂者皆各有考量,取舍之间自有不同权衡与思虑。临川傅占衡(1608—1660)在明亡后隐居山中,以词曲自娱,创作戏曲多种,皆未入《湘帆堂集》。同邑友人陈孝逸《叙湘帆堂集目录》道出了傅占衡的真实想法:“他如《董糟丘杂剧》《崇明寺塔曲》俱有义趣,并不附本集。文长之附《四声猿》、玉茗之附《四梦》非古法,吾不敢效也。”在他们看来,万历四十七年(1619)商维濬编刻《徐文长三集》、崇祯九年(1636)沈际飞汇刻《独深居点定玉茗堂集》将徐、汤二人的戏曲附刻集末,打破了戏曲不入文人别集的“古法”。此“古法”某种意义上传达出正统观念对文人参与戏曲创作活动的价值判断:文人流连戏曲是“不务正业”。如乾隆年间,黄图珌在刻印自己别集《看山阁全集》时,因担心“为世所薄”,故未收《雷峰塔》《栖云石》两部传奇。晚清的曲家凌廷堪也曾想将自己创作的戏曲编入文集,但恃于强大的舆论压力,“其他朋辈,多以小道薄之”,只得作罢。可见,社会舆论与世俗心理形成的外部压力,深刻影响着曲家的文体认知与创作观念产生。

在强大的社会舆论和文化观念影响下,文人对待自身戏曲创作实践,往往与其对戏曲作品的价值判断形成背离,“悔其少作”“以志己过”之类的话,时时见诸曲家的笔端。当然,是否真悔,或可再商,但不妨将这类表达视为对外部文化观念的一种回应。明末清初陈子升(1614—1692)创作传奇数种,其编纂诗文集的时候,曾考虑将它们附刻于全集之尾,“附缀卷末,见善戏谑者之不失为有斐君子也”。可实际上,陈子升《中洲草堂遗集》卷末仅见散曲,而未刻剧曲。笔者认为,个中原因与陈子升晚年自悔之意不无关系,他曾说:“予弱冠时嗜声歌,作传奇数种……亦以志吾过也。”他还赋诗一首以纪其过:“游戏当年拜老郎,水磨清曲厌排场。而今总付东流去,剩取潮音满忏堂。”持有陈子升类似念头的曲家还不少,如清乾隆年间邹山创作戏曲4种,而家刻文集《乐余园百一偶存集》并没有将戏曲作品《双星图》收入其中,因为邹山认为它们非“庙堂之大器”。可见,戏曲为“余技”“剩技”的传统观念在邹山的头脑中仍留下深刻的印记。

▲陈子升《中洲草堂遗集》(清道光二十年南海伍氏诗雪轩刻本)

综上,文人别集中戏曲“存目未刻”的编刻方式和存在形态,从表面看是编纂者向主流话语体系的让步,实际上则透露出编纂者在收与不收戏曲问题上的纠结与游移心理,体现了编纂者在戏曲传世初衷与现实操作、个人偏好与社会舆论之间的两难选择。

四、戏曲“难入”别集的外部因素

文人面对戏曲入别集所产生的犹疑心态,在很大程度上受主流文学思想影响,而戏曲文体的地位判别和体式定位,皆会左右编纂者最终的收录取舍。因此,考量主流士人阶层对戏曲文体的认知立场,是探寻戏曲入别集文人取舍背后意涵的关键所在。

明清两代,戏曲的文体地位经历了循序渐进的抬升过程。明太祖朱元璋开国,“尊崇儒术,士大夫耻留心辞曲,杂剧与旧戏文本皆不传”,彼时宫廷及上流社会的宴集演剧多以北曲杂剧为主,出于文人雅士之手的南曲戏文少之又少。直至正德、嘉靖年间,风气始变,江南老生员纷纷参与南曲戏文创作,时人刘良臣(1482—1551)谓“正德以来,南词盛行,遍及边塞”。延至嘉靖、隆庆、万历时期,李开先、顾大典、沈璟、汤显祖、陈与郊等一众进士出身的文人投身传奇创作,极大提升了明传奇的文体地位,也在全社会掀起编撰传奇的风潮。与此同时,戏曲世俗消费也呈现出蓬勃的状态,不仅剧本曲籍的刊刻形成南京、苏州、杭州、湖州、徽州、建阳等多个中心,培养了大批曲本读者,而且达官贵人、文人雅士纷纷建造园林、置办家乐戏班,很大程度促进了戏曲创作的兴盛。此外,戏曲文献整理、戏曲理论批评、剧种演出的繁荣,都推动杂剧、传奇进入传统的各式文体大家庭中争取一席之地。

陈志勇辑校《明传奇佚曲全编》(中华书局,2021年)

尽管明清戏曲活动极为繁盛,但戏曲文体想要获得官学体系和主流社会的认同,取得与诗文对等的文体地位仍困难重重,这与彼时传统文学观念对戏曲所持有的固有偏见不无关系。中国古代文体素来存有尊卑高下之分,历代官私书目对典籍的归类、排序与著录方式,无不彰显此类文体认知。目录学范畴的集部是文学作品和文学批评的集合体,其收录书籍的情况是文学观念和文体分类意识的显现形态。明清官私书目大多将戏曲归入史部或子部,集部不收戏曲几成惯例,仅有少数私人书目在集部之末著录戏曲。如明人祁承《澹生堂藏书目》于集部“余集类”下设“艳诗”类目著录曲作;清人黄虞稷《千顷堂书目》则在集部“词曲类”后附录剧曲。此类特例的出现,主要是因为书目编纂者自身顾曲娱曲,而且家藏戏曲极为丰富,纯粹出于个人喜好,较少受到外部正统文学观念的影响。官修的《四库全书》则大异其趣,其“曲则惟录品题论断之词及《中原音韵》,而曲文则不录焉”的基本指向,强化了集部不收戏曲的传统,故而才会出现四库馆臣翁方纲在著录《西厢记》时“词曲之书,毋庸存目”的处理。在官学思想主导下,《四库全书总目》虽将一些著名曲家的文集列为存目,但只字不提及他们的戏剧才能与创作信息,这种讳莫如深的做法无疑隐藏着体现官学本质的四库体系的思想策略,堪为无言之言的经典范例。传统文体观念对戏曲的偏见,实是这种“官学本质”四库体系的思想策略之外在表征。

偏见是历史的层累沉积,几乎伴随戏曲的降生一路而来,尤其是在明清两代,戏曲在“尊体”的同时亦与文体矮化观念作抗争。具体而言,大致体现在以下三个层面:

首先是文体累降说。明清不少文人持有“一代之兴,必有一代擅长之著作”的文体演进观念,然而,也有人以文体尊卑累降的观念来衡判戏曲文体的位次,如黄周星《制曲枝语》说:“诗降而词,词降而曲,名为愈趋愈下。”徐梦元《惺斋五种曲·总序》亦有“似曲之道,屡变愈下”之类似观点。他们的论断都有一个核心词汇“降”,认为诗词曲的嬗递是一种由尊降卑、由高渐下的过程。受此观念影响,戏曲文体地位愈变愈卑,遂出现“搢绅学士,屏之弗谈,而一二乡曲唇吻之徒,又率意为之,曲之为道,遂以日晦”的局面。世人或将戏曲排斥于正统文学之外,即便勉强将其划入文学范畴,也将其置于各类文体的末流。

其次是戏曲“小技”“剩技”论。明清正统文人视戏曲为“小技”,将之看作文章之外的“余技”“剩技”,叶凤毛谓“多文才艺之士,用之不尽,则溢为小说词曲”,黄叔琳《芝龛记·序》则说词曲乐府是“文章末艺也”。不仅如此,戏曲“供酒间谑浪”的功能,彰显戏曲为俳优粉墨登场之具的性质,揭示出戏曲不被人看重、视为“小技”的另类隐因。可见,正统文人拈出“技艺”的成分,弱化“文章”的色彩,戏曲自然受到贬低。因此,《四库全书总目》在编纂之初就给词曲定调:“词、曲二体在文章、技艺之间,厥品颇卑,作者弗贵。”既然戏曲居于“文章、技艺之间”,尚不能算作纯粹之文章,故而集部不收自是情理之中的事情。对此,姚华总结道:“曲之于文,横被摈斥,至格于正轨之外,不得与诗词同科。”姚名达《中国目录学史》亦点明:“戏曲则史志完全不收,要之皆不承认为文学,故未尝厕入集部焉。”

再次是文人治曲的负面评价。明清时期戏曲已然融入大众日常文娱生活,但正统观念认为必须要保持底线:士大夫可以蓄养家乐,但毋去粉墨登场。廖燕说:“文人唱曲,岂效优人伎俩?”这样的“底线”本质上是既要消费戏曲,也要与伶人贱业保持相对的距离。身处如此社会氛围,一些保守的文人甚至不与曲家相往来。如明嘉靖年间山东章丘人袭勗,三十岁才补诸生,当时邑中李开先、袁崇冕“方尚金元词曲”,但勗认为李、袁创作戏曲“谓伤雅道”,遂不与交往。当然这是极端的例子,但也从侧面窥见正统观念对文人填词顾曲的行为限制。古时伶人社会地位低微,且戏文以戏谑之词供人笑乐,或认为文士不能自降身份为伶人创作脚本,如《孟子塞五种曲序》即谓“学士大夫遂有讳曲而不道者。且其为辞也,可演之台上,不可置之案头”。可想而知,当曲作一旦与伶人台上演出联系起来,其文章的地位几乎荡然无存,而沦为“供酒间谑浪之具”。

在正统文人眼中,治曲并非诗文余兴之所至,而是有玷德声的负面行为。沈德符《万历野获编》记载,明初大学士邱濬由于创作《五伦全备记》,同僚王端毅批评他“理学大儒,不宜留心词曲”。个中原因正在于“昔人以填词为俳优之文,不复经意”。一旦“经意”于此,即受人诟病。如王九思好为词曲,便有人规劝说:“闻之太上立德,其次立功,其次立言,公何不留意经世文章?”王骥德也遭遇过类似的情景,有客人质问他:“子言诚辩,抑为道殊卑,如壮夫羞称,小技可唾何?”除了王九思、王骥德,也有朋友质问汤显祖:“以君之辩才,握麈而登皋比,何渠出濂、洛、关、闽下?而逗漏于碧箫红牙队间,将无为青青子衿所笑?”凡此,皆反映出在一部分文人的观念中,娱曲与撰剧是不同的行为方式:前者是获得精神享受,可以理解;而后者则是躬身“剩技”之间,自甘堕落。若是再把这些作品收入正式的文集中,则更不可思议。

事实上,真正将戏曲视为不朽之“言”的文学家,大多深谙曲体价值、心怀推崇之意,汤显祖便是其中代表。汤显祖曾描绘自己最终选择“小词”以载“道”的文学实践进路:“学道无成,而学为文。学文无成,而学诗赋。学诗赋无成,而学小词。”在文体的择选过程中,他删汰诗赋而选择“小词”。他又认为“词家四种……大者不传,或传其小者”。汤显祖去世一年后的上元日,三子汤开远转述其父生前的话:“吾欲以无可传者传。”此话所说的“无可传者”即“临川四梦”,表明汤氏对戏曲文体的看重,最终借助戏曲来实现人生立言不朽之梦。即便汤显祖因“临川四梦”获得了极高赞誉,“二百年来,一人而已”,但在他内心深处,戏曲“等而下之”的文学观念根深蒂固,让他始终感觉到“剧作家”的社会身份、文化身份与文人士大夫的人生追求相去甚远,精神深处总有“去词人化”的身份焦虑。汤显祖离世之后,其子汤开远甚至“取义仍续成《紫箫》残本及词曲未行者,悉焚弃之”。天启元年(1621)韩敬编刻《玉茗堂全集》,便未收录“临川四梦”,正是此种观念影响下的直接结果。

上海昆剧团《临川四梦》剧照

受明清正统戏曲观念的长期浸染,多数曲家在编订文集、筹划刊刻曲作之时,无不心存迟疑顾虑。即便决意收录,也常常隐匿本名、只用别号署名。徐渭《四声猿》的早期刊本未署作者或署“天池生”,直至《徐文长三集》收录该剧才署“明越郡天池山人徐渭戏编”,始用本名。同样,林章《青虬记》初刻本未署名,收入《林初文诗文集》才明确为林氏所作。对曲作不署真名的现象,明末清初曲家沈自晋在《南词新谱》“凡例”中喟叹道:“词家作曲,而每讳之。或曰无名氏,或称别号某以当之。嗟乎,曲则何罪而讳之?”文人连署名制曲都百般避讳,自然更不愿将曲作编入文集广为流传。这一现象正是传统文体观念和社会舆论“矮化”戏曲文体,在剧作家身上留下的具象化印记。

结语

明清之际戏曲入别集这一独特文化现象,不仅反映了戏曲文体在文人创作体系内的地位升降,也深刻揭示了文学观念、社会心态与书籍出版实践三者之间的深层互动关系。

别集作为承载文人著述的核心文献形态,其编纂体例与内容取舍,本身便是一种带有明确倾向的文化选择。戏曲能否入集,体现了家刻、坊刻等不同刊刻形态在文体收录上的弹性尺度,也体现出编纂出版过程中求全存真与避忌世俗非议之间的取舍平衡。通过分析别集中戏曲的载录方式、位置、序跋、凡例乃至“存目未刻”现象,可以窥见编刻者对待戏曲时而自信、时而游移的复杂心态。同时,通代考察明清戏曲入别集的发展脉络,还会发现文人的戏曲观并非铁板一块,而是在创作实践、传播诉求与社会舆论压力的相互制衡之下不断调适演变。戏曲逐渐以“附录”或“专卷”的形式,跻身于代表文人一生文学成就的别集之中。这种收录方式,无论是居于卷末的“附刻”,还是成为全集的独立组成部分,都体现了编纂者对戏曲文学价值的某种肯定。这既是戏曲文体地位在实际传播层面取得的有限突破,也是文人创作热情、文体自觉意识与外部主流文化环境彼此调和博弈的结果。

要言之,明清时期戏曲入别集现象,充斥着文人以戏曲传世的文学雄心与现实顾虑、内在情感承载与外在道德评判的强烈张力。它既是戏曲文体艰难提升自身地位的一个侧影,也展现出明清文人在对待自撰戏曲“是否传世”“如何传世”问题上的不同做法。故而,深入探讨这一文化现象,有助于厘清明清文人的戏曲思想及其与外部文化生态、时代文学观念之间的内在关联。

载《中山大学学报(社会科学版)》2026年第3期

“中国古代文学研究”

责任编辑:张慕华

推荐阅读

马卫中 | 道咸时期宋诗派源流考
[加]方秀洁 | 在话语缺席的情况下:刻写明清女性友谊
周兴陆 | 惩创说:从《诗经》学到通俗文学功用论
中山大学学报(社会科学版)2026年第3期目录及摘要
中山大学学报(社会科学版)2026年第2期目录及摘要
中山大学学报(社会科学版)2026年第1期目录及摘要
中山大学学报(社会科学版)2025年第6期目录及摘要
中山大学学报(社会科学版)2025年第5期目录及摘要
中山大学学报(社会科学版)2025年第4期目录及摘要

审核发布

初审:宋宇

审核:詹拔群、周吉梅

审核发布:彭玉平、李青果

关注我们

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-06-27 01:36:09 HTTP/2.0 GET : https://f.sjds.net/a/482355.html
  2. 运行时间 : 0.240037s [ 吞吐率:4.17req/s ] 内存消耗:4,415.00kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=d7166ff7a68410cdcd0a602deb393041
  1. /yingpanguazai/ssd/ssd1/www/f.sjds.net/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.sjds.net/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.sjds.net/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.sjds.net/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.sjds.net/runtime/temp/515214ef16c88a93e5374c9e895e8d02.php ( 12.06 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.sjds.net/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000642s ] mysql:host=127.0.0.1;port=3306;dbname=f_sjds;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000851s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000266s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000252s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000532s ]
  6. SELECT * FROM `set` [ RunTime:0.000194s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000652s ]
  8. SELECT * FROM `article` WHERE `id` = 482355 LIMIT 1 [ RunTime:0.000561s ]
  9. UPDATE `article` SET `lasttime` = 1782495369 WHERE `id` = 482355 [ RunTime:0.018823s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.007025s ]
  11. SELECT * FROM `article` WHERE `id` < 482355 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.003114s ]
  12. SELECT * FROM `article` WHERE `id` > 482355 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.007886s ]
  13. SELECT * FROM `article` WHERE `id` < 482355 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.065592s ]
  14. SELECT * FROM `article` WHERE `id` < 482355 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.025841s ]
  15. SELECT * FROM `article` WHERE `id` < 482355 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.040864s ]
0.241775s