PDO fetchAll 返回空数组,但是可以显示count数量

PDO fetchAll 返回空数组,但是可以显示count数量,第1张

这是正常效果,你可以这样简单理解:

count统计的是你有一个数组内容,所以数量为1。

但是这个数组是空的,所以var_dump打印出来的是空数组。

虽然是一个空数组,但它仍然是一个元素!

聚对苯二甲酸丙二酯[Poly(trimethylene terephthalate),PTT]是新近商业化的芳香族聚酯。虽然工业化较晚,但它可是60年前由Whinfield和Dickson首先合成的三种高熔点芳香族聚酯中的一种。另外两种即聚对苯二甲酸乙二酯(PET)和聚对苯二甲酸丁二酯(PBT)早已成为聚合物家族中的栋梁。PTT一直藏于深闺主要是由于它的单体1,3-丙二醇(PDO)不易得到,其售价昂贵,这样不适于作为商用聚合物的原料。

很久以来,纤维工业已经知道PTT具有纤维用优异的性能。在1971年的一份专利中就发现与PET相比,PTT纤维具有模量低、弯曲性能好,比PET更适合于制作纤维填充料和地毯。Ward等人比较了三种聚酯纤维的机械性能,发现PTT与PET、PBT相比确实具有好的d性回复和低的d性模量。这两种性能对于制作具有手感好的织物和d性回复好的地毯是非常必要的,因此化学工业和纤维工业一直没有放弃低成本PDO技术的开发及PTT的开发研究。早在上个世纪70年代,Shell化学公司经由丙烯醛路线生产PDO,这样才掀起了一个PTT聚合和应用研究的小高潮。尽管PDO制造成本有所降低,但还不足以低到适应于商用聚酯的开发,导致PTT研究终止。

到了80年代后期,Shell和Degussa在两种不同的PDO生产技术上取得了突破:Degussa降低了丙烯醛路线制造PDO的成本,改善了纯度,能达到聚合要求;Shell开发了以CO和H2与环氧乙烷(EO)加氢甲酰化的合成路线,加氢甲酰化技术和EO原料易得,提升了他们的核心竞争力。在1995年,Shell公司宣布PTT商业化,并在Louisiana的Geismar建设了80kt/a规模的PDO工厂。随后杜邦宣布在北卡的金斯顿改造了一个现成的聚酯工厂,用从Degussa获得的PDO生产PTT,同时与Genecore合作开发具有潜在的、更便宜的甘油发酵制PDO的生物路线。PTT在它被发明半个世纪后终于加入了PET和PBT的行列,成为商用聚酯一个崭新的品种。

1 1,3-丙二醇

1,3-丙二醇(CAS:504-63-2),为无色透明液体,沸点为214℃,有三种合成路线,即丙烯醛水合法、环氧乙烷(EO)甲酰化法和生物发酵法。

11 丙烯醛水合法

德国Degussa公司开发出一种以丙烯为原料生产1,3-丙二醇的低成本新工艺。其反应步骤如下:(1)丙烯在氧化锑或其它金属氧化物催化剂的作用下与氧气反应生成丙烯醛;(2)丙烯醛在酸性催化剂或螯合型离子交换剂作用下与水进行双键水合制成3-羟基丙醛(3-HPA);(3)3-HPA在Ni催化剂或Pt、Ru催化剂的作用下进行醛基加氢,从而制得1,3-丙二醇。其主要反应式如图1所示。丙烯醛水合法合成PDO的技术关键是丙烯醛水合转化率和选择性的高低,水合催化剂的性能和水合工艺决定了工艺路线的先进性。但丙烯醛有强烈的刺激呼吸道的作用,在环境友好方面有一定的缺陷。

Degussa公司曾在Antwerpen建有一套2kt/a能力的1,3-丙二醇的中试装置,后在1996年兴建50kt/a规模的工业装置,其产品全部用于生产PTT。

50℃

CH2=CHCHO+H2O—→HO-CH2CH2CHO

10MPa 3-HPA

50~125℃

王雪松等人利用热重分析法(TG)研究了304、309、314、319、324和336℃六个温度下的等温热失重行为,随着分解温度的升高,降解失重速率加快,在同一分解时间下的焦炭产率更低。对等温失重数据用最大失重速率法和iso-conversional procedure两种方法进行处理,得到了PTT分解的表观活化能分别为201kJ/mol和192kJ/mol,分解反应为一级反应,指前因子Ln(Z)分别为36min-1和34min-1。这些动力学数据与以前报道的Kissinger动力学处理法得到的结果(E=192kJ/mol,N=10,Ln(Z)=37min-1)很接近。

4 研究展望

综上所述,特殊的结构(分子链Z型螺旋排列)赋予了PTT许多优异的性能。PTT纤维克服了PET纤维刚性强、染色性能差和PBT纤维柔性大、易变形的缺点,具有PET良好的耐化学性、像尼龙一样的高回d性并兼有耐污性,是很好的纺织纤维用材料和地毯用纤维材料。我国若要发展PTT,在开发PTT产品应用的同时要研究PDO的生产。在PDO的几种生产方法中,笔者建议应优先开发环氧乙烷法,形成自主知识产权,尽早进行工业化生产,其次是加大力度研究生物发酵法。

PDO最早出现在DuPont公司的专利中。采用葡萄糖或淀粉等碳水化合物做为原料,首先发酵成甘油,然后通过与单一微生物接触,在适当的发酵条件下制得PDO。所使用的单一微生物含有一种活性脱水酶或二醇脱水酶,这种酶催化剂的引入是这一工艺的关键。1995年,DuPont公司的专利首先介绍了生物发酵法合成1,3-丙二醇的新工艺。

随后加藤拜等利用含有编码甘油-3-磷酸脱氧酶、甘油-3-磷酸酶、甘油脱水酶和1,3-丙二醇氧化还原酶的重组生物酶,同样实现了1,3-丙二醇的生物合成。杜恩-科莱曼等发明了用含有多种脱水酶蛋白质的DNA从多种碳源的生物体中生产1,3-丙二醇的改进方法。

国内在生物发酵法制备1,3-丙二醇方面的研究相当活跃,有些已取得了成果。由清华大学应用化学研究所所长刘德华教授承担的国家“十五”科技攻关项目——“二步法发酵生产1,3-丙二醇”项目已于2003年12月28日通过鉴定,试验规模达到了100t/a。

杜邦和Genecore开发的生物发酵法生产1,3-丙二醇主要难点在得率的提高和菌种的选择性上,因而到目前为止还没有见到生物法工业化生产1,3-丙二醇的报导。

2 PTT的合成

PTT由PDO与PTA或DMT熔融聚合而得,化学结构如图3(略)所示。在聚酯工业中它又被称做为3GT,G和T分别代表二醇和对苯二甲酸,G前面的数字表示二醇组分亚甲基的数目。Shell公司PTT的商业名称为Corterra®聚合物,而杜邦公司商业名称为DuPontTMSorona®聚合物。

21 DMT法合成PTT

DMT法合成PTT的主要反应过程如图4(略)所示。

Kawase等人最早提出用DMT路线合成PTT,以钛酸四丁酯为酯交换催化剂和缩聚催化剂,在160-220℃范围内进行酯交换反应,250℃真空条件下进行聚合得到PTT。Doerr等人提出以醋酸钴和钛酸四丁酯为酯交换催化剂,以丁基锡酸为缩聚催化剂,添加调色剂和亚磷酸三癸酯为稳定剂,改善PTT的色相。Traub等人也提出用亚磷酸三丁酯为稳定剂,可以改善色相和降低PTT的端羧基含量。总之,在摩尔比12-22范围内,以钛酸酯类为酯交换催化剂,在140-220℃范围内进行酯交换反应,再以钛锡化合物为缩聚催化剂,在250-270℃真空下进行PTT的聚合。

22 PTA法合成PTT

Schimdt等人提出在直接酯化法合成PTT中,在加压下进行酯化,以三醋酸锑和钛-硅共沉淀氧化物为缩聚催化剂,在257-265℃真空下进行PTT的聚合,以磷酸和醋酸钴为稳定剂,可以减少丙烯醛和烯丙醇的生成。Kuo等人提出用乙二醇钛和三醋酸锑为缩聚催化剂在250℃下聚合可以得到b<9的PTT切片。Kelsey提出以钛为缩聚催化剂,加入少量的颜料Irgafos 168和酚基丙酸可以减少丙烯醛的生成和改善聚酯色相。

由于PTA熔点>300℃,在PDO中溶解性较差,所以直接酯化工艺最好在“母液”存在下进行,70-150kPa、250-270℃反应100-140min。母液是聚合度3-7的PTT齐聚物熔体,是前一批留在反应釜中增加PTA溶解度的反应介质。酯化反应是PTA自催化反应,到达所要求的聚合度后,50%-60%的齐聚物熔体转移到缩聚釜中,在260-275℃下加入(05-15)×104的丁氧基钛或(10-25)×104二丁基氧化锡或两者兼之作为催化剂。真空度<015kPa用以去除缩聚副产物,直至聚合物黏度达到07-09dL/g。其反应过程如图5(略)所示。

23 PTT的固相缩聚

为了获得相对分子质量更高的PTT,熔融缩聚的切片可以通过抽真空或在惰性气体气氛下在180-210℃下进行固相增黏。Ben Duh研究了特性黏度在0445-0660dL/g的PTT在200-225℃下的固相增黏,用改性二级动力学模型进行处理,即总增黏速率为-dC/dt=2k>A(C-Cad),式中:C-总的端基浓度,t-固相增黏时间,ka-表观反应速率常数,Cai-表观活性端基浓度。研究结果表明,PTT与PET具有相同的固相增黏机理,表观反应速率常数ks和表观活性端基浓度Cai是影响固相增黏速率的两个重要参数,其中ka随增黏温度和预聚物特性黏度增加而增加,而Cai随增黏温度和预聚物特性黏度增加而下降。即固相增黏速率随增黏温度和预聚物特性黏度增加而增加,表观活化能约为52kJ/mol。

24 PTT合成中的副反应

由于PTT缩聚过程是在较高温度下进行的,所以除了生成PTT的主反应外,还会发生大分子链端基之间和大分子链中酯键裂解等副反应,造成产物发黄和熔体黏度降低等。

241 醚化反应

同PET合成过程中生成DEG一样,在缩聚期间,PDO形成一缩二丙二醇(DPG)共聚在PTT分子链中,酸性的PTA工艺更加剧了DPG的生成,DPG的共聚使聚合物熔点下降,影响纤维的上染率。DPG的生成如图6(略)所示。

242 热降解反应

PTT热氧化降解及热降解机理类似于PET,PTT分,子链酯键在热运动作用下发生McClafferty重排(如图7略),酯羰基上氧原子吸引β-亚甲基上的氢原子形成六元环过渡态,裂解成端羧基和端烯丙酯基。端烯丙酯基进一步裂解成烯丙醇,在氧存在下继而氧化成丙烯醛,烯丙醇也易与PDO作用而形成丙烯醛。因此,热降解的结果是使聚合物中端羧基含量升高,副产物丙烯醛增多,同时产生的双键易发生交联使聚合物色相变深。

243 环状二聚体的生成

和PET一样,PTT在熔融状态下端羟基回咬与酯键发生酯交换造成环状低聚体,所不同的是PET的环状低聚体以环状三聚体居多,而PTT的环状低聚体以环状二聚体居多。

PTT环状二聚体熔点251-254℃,在熔融聚合物中约占25%-30%,比PET的环状三聚体还易挥发。

假设你系统里数据库请求的函数是 pdo_query (你自己根据情况调整),表名是tblcate

另外,这段代码使用到了array_column函数,该函数从php55起才有,如果你的版本较低,要找一个兼容函数放到函数库里(官方文档评论中就有实现)

以下是代码文本 如果复制过去出现T_VARIABLE错误,就是代码中字符被系统混掉了,你要重新手打一下

//这里根据你的意思,应该是选出没有下级的节点,如果需要全部或其它的,你根据情况修改,不影响后面的其它 *** 作

$selectedNodes = pdo_query("select from tblcate where pid not in(select pid from tblcate)");

//选出全部节点

$allNodes = pdo_query("select from tblcate ");

//将节点数据使用id索引,方便获取

$allNodes = array_column($allNodes, NULL, 'id');

foreach($selectedNodes as &$node){

$tree = getParentNode($node['pid']);

//这里的$tree 是上级名称拼起来的,不包含本级名称,如要包含,在后面附加上就行了

$node['tree'] = implode(',',$tree);

}

unset($node);

var_export($selectedNodes );

function getParentNode($pid){

global $allNodes;

$pnodes=[];

if($pid> 0 && isset($allNodes[$pid])){

$pNode = $allNodes[$pid];

$pnodes[]= $pNode['name'];

$rnodes = getParentNode($pNode['pid']);

if(!empty($rnodes)){

$pnodes = array_merge($pnodes,$rnodes);

}

}

return $pnodes;

}

以上就是关于PDO fetchAll 返回空数组,但是可以显示count数量全部的内容,包括:PDO fetchAll 返回空数组,但是可以显示count数量、求改性ptt资料、php中如何获取全部子节点的父节点等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/10105582.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存