SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('options', 'languages', 'contentTypes', 'codeEventListeners', 'deferredRun', 'simpleCache', 'addOns', 'defaultStyleProperties', 'routeFiltersIn', 'routeFiltersOut', 'routesPublic', 'nodeTypes', 'bannedIps', 'discouragedIps', 'styles', 'displayStyles', 'userBanners', 'smilies', 'bbCode', 'threadPrefixes', 'userTitleLadder', 'reportCounts', 'moderationCounts', 'userModerationCounts', 'notices', 'userFieldsInfo')
Run Time: 0.002066
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 26 | Using where |
SELECT data_key, data_value
FROM xf_data_registry
WHERE data_key IN ('brListenerClasses', 'brBriviumAddOns')
Run Time: 0.000154
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_data_registry | range | PRIMARY | PRIMARY | 27 | | 2 | Using where |
SELECT *
FROM xf_brivium_addon
ORDER BY addon_id
Run Time: 0.000344
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_brivium_addon | index | | PRIMARY | 77 | | 1 | |
INSERT INTO xf_data_registry
(data_key, data_value)
VALUES
(?, ?)
ON DUPLICATE KEY UPDATE
data_value = VALUES(data_value)
Params: brBriviumAddOns, a:0:{}
Run Time: 0.000146
SELECT cache_value
FROM xf_permission_combination
WHERE permission_combination_id = ?
Params: 1
Run Time: 0.000145
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | xf_permission_combination | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT thread.*
,
user.gender, user.avatar_date, user.gravatar,
NULL AS thread_read_date,
0 AS thread_reply_banned,
0 AS thread_is_watched,
'' AS draft_message, NULL AS draft_extra
FROM xf_thread AS thread
LEFT JOIN xf_user AS user ON
(user.user_id = thread.user_id)
WHERE thread.thread_id = ?
Params: 317203
Run Time: 0.000440
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | user | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SELECT node.*, forum.*
,
permission.cache_value AS node_permission_cache,
NULL AS forum_read_date
FROM xf_forum AS forum
INNER JOIN xf_node AS node ON (node.node_id = forum.node_id)
LEFT JOIN xf_permission_cache_content AS permission
ON (permission.permission_combination_id = 1
AND permission.content_type = 'node'
AND permission.content_id = forum.node_id)
WHERE node.node_id = ?
Params: 38
Run Time: 0.010753
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | forum | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | node | const | PRIMARY | PRIMARY | 4 | const | 1 | |
SIMPLE | permission | const | PRIMARY | PRIMARY | 35 | const,const,const | 1 | |
SELECT post.*
,
thread.*, thread.user_id AS thread_user_id, thread.username AS thread_username,
thread.post_date AS thread_post_date,
post.user_id, post.username, post.post_date,
bb_code_parse_cache.parse_tree AS message_parsed, bb_code_parse_cache.cache_version AS message_cache_version,
user.*, IF(user.username IS NULL, post.username, user.username) AS username,
user_profile.*,
user_privacy.*,
signature_parse_cache.parse_tree AS signature_parsed, bb_code_parse_cache.cache_version AS signature_cache_version,
session_activity.view_date AS last_view_date,
0 AS like_date
FROM xf_post AS post
INNER JOIN xf_thread AS thread ON
(thread.thread_id = post.thread_id)
LEFT JOIN xf_bb_code_parse_cache AS bb_code_parse_cache ON
(bb_code_parse_cache.content_type = 'post' AND bb_code_parse_cache.content_id = post.post_id)
LEFT JOIN xf_user AS user ON
(user.user_id = post.user_id)
LEFT JOIN xf_user_profile AS user_profile ON
(user_profile.user_id = post.user_id)
LEFT JOIN xf_user_privacy AS user_privacy ON
(user_privacy.user_id = post.user_id)
LEFT JOIN xf_bb_code_parse_cache AS signature_parse_cache ON
(signature_parse_cache.content_type = 'signature' AND signature_parse_cache.content_id = post.user_id)
LEFT JOIN xf_session_activity AS session_activity ON
(post.user_id > 0 AND session_activity.user_id = post.user_id AND session_activity.unique_key = CAST(post.user_id AS BINARY))
WHERE (
(post.thread_id = ? AND (post.position >= 0 AND post.position < 10) )
)
AND (post.message_state IN ('visible'))
ORDER BY post.position ASC, post.post_date ASC
Params: 317203
Run Time: 0.002816
Select Type | Table | Type | Possible Keys | Key | Key Len | Ref | Rows | Extra |
---|
SIMPLE | thread | const | PRIMARY | PRIMARY | 4 | const | 1 | Using filesort |
SIMPLE | post | ref | thread_id_post_date,thread_id_position | thread_id_post_date | 4 | const | 1 | Using index condition; Using where |
SIMPLE | bb_code_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.post_id | 1 | Using where |
SIMPLE | user | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_profile | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | user_privacy | eq_ref | PRIMARY | PRIMARY | 4 | xenforo.cc.post.user_id | 1 | |
SIMPLE | signature_parse_cache | eq_ref | content_type_id | content_type_id | 31 | const,xenforo.cc.post.user_id | 1 | Using where |
SIMPLE | session_activity | eq_ref | PRIMARY | PRIMARY | 22 | xenforo.cc.post.user_id,func | 1 | Using where |
INSERT INTO xf_thread_view
(thread_id)
VALUES
(?)
Params: 317203
Run Time: 0.000101
INSERT INTO `xf_session` (`session_id`, `session_data`, `expiry_date`) VALUES (?, ?, ?)
Params: 765b411ded6c497560bdfff87575f450, , 1714707304
Run Time: 0.003985
INSERT INTO xf_session_activity
(user_id, unique_key, ip, controller_name, controller_action, view_state, params, view_date, robot_key)
VALUES
(?, ?, ?, ?, ?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
ip = VALUES(ip),
controller_name = VALUES(controller_name),
controller_action = VALUES(controller_action),
view_state = VALUES(view_state),
params = VALUES(params),
view_date = VALUES(view_date),
robot_key = VALUES(robot_key)
Params: 0, , , XenForo_ControllerPublic_Thread, Index, valid, thread_id=317203, 1714703704,
Run Time: 0.000108
INSERT INTO xf_bb_code_parse_cache
(content_type, content_id, parse_tree, cache_version, cache_date)
VALUES (?, ?, ?, ?, ?)
ON DUPLICATE KEY UPDATE parse_tree = VALUES(parse_tree),
cache_version = VALUES(cache_version),
cache_date = VALUES(cache_date)
Params: post, 323831, a:51:{i:0;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"http://pic2.zhimg.com/v2-5d6f622b741ab5173b0de39baa3a08a1_is.jpg";}}i:1;s:20:" 鲁超,赛先生 ";i:2;a:4:{s:3:"tag";s:3:"url";s:6:"option";s:57:"https://www.zhihu.com/question/32276500/answer/1252648226";s:8:"original";a:2:{i:0;s:65:"[URL='https://www.zhihu.com/question/32276500/answer/1252648226']";i:1;s:6:"[/URL]";}s:8:"children";a:1:{i:0;s:12:"阅读原文";}}i:3;s:111:"
这确实是一个大家都很熟悉的生活体验。
为了理解这个问题,我们一步一步来。
";i:4;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic2.zhimg.com/v2-50f2b7de3aa6dbbf84e2706ba81b785d_b.jpg";}}i:5;s:154:"
镇贴图,不会被删吧?
一、什么是泡沫?
泡沫定义:由不溶性气体分散在液体或熔融固体中所形成的分散物系。
";i:6;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-219f7cd57b6e7c6336cdabcedca86890_b.jpg";}}i:7;s:170:"
经济泡沫另行处理
我们用日常生活中见到的情况作为例子,比如摇晃一个封闭的矿泉水瓶,肯定会起泡,但是很快就破灭了。
";i:8;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-1b35465edc09028a0b70a4025ac24be2_b.jpg";}}i:9;s:206:"
水是生命之源,请节约每一滴水
如果你要将矿泉水瓶里装上肥皂水,泡沫将会更加丰富,而且还不破灭,更能被小朋友拿过来吹泡泡,这是什么原因呢?
";i:10;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic2.zhimg.com/v2-2056c15aa8cf432a8529bb9c5cf27ae1_b.jpg";}}i:11;s:254:"
推荐图书:刘慈欣《圆圆的肥皂泡》
为了解释这一点,下面这个图应该都能看得懂,地球上的任何事物都会受到引力,泡沫的那层水也不例外,会很自然的往下流,这就叫做“排水效应”。
";i:12;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic4.zhimg.com/v2-365189a9ea12541e3a3763a649b782cb_b.jpg";}}i:13;s:402:"
排水效应
矿泉水也好,肥皂水也好,都会有这个“排水效应”。 那么为什么肥皂水的泡沫能比水多维持那么长时间呢?不是因为纯水有问题,而是因为肥皂水中有一些物质可以对抗排水效应。
这当然就是我们大名鼎鼎的表面活性剂啦,有人说过,如果没有表面活性剂,有 90%的化学工作者将会失业。
";i:14;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic2.zhimg.com/v2-ece8f2962351d71138b3ca18513efbe5_b.jpg";}}i:15;s:265:"
表面活性剂的结构大家高中都学过,有一个亲水基团和一个憎水基团(也叫疏水基团),一般来说,它们存在一定的极性,所以两个基团带有不同的电荷。但是它们在水里是如何分布的呢?如下图:
";i:16;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-fa1cc31b4b8fde8f3d6c4fab8b74f44e_b.jpg";}}i:17;s:140:"
亲水基朝向里面,憎水基朝向外面
而泡沫只是一层水,这时候,表面活性剂的分布是这样的,如下图:
";i:18;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-ad5100c841f6bc9173fbdd9a88c152e4_b.jpg";}}i:19;s:188:"
疏水基朝向外部的气相,亲水基朝向液内
按照前面说的“排水效应”,液相里的水是要不断往下流的。但因为有了表面活性剂而有了不同:
";i:20;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:21:"电荷排斥效应:";}}i:21;s:143:"
亲水基带有同样的电荷,所以会相互排斥, 这种电荷排斥撑起了泡沫层,在垂直方向维持着泡沫的稳定。
";i:22;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-304e41986dd00ba45cd34f4a0092486e_b.jpg";}}i:23;s:2:"
";i:24;a:4:{s:3:"tag";s:1:"b";s:6:"option";N;s:8:"original";a:2:{i:0;s:3:"[B]";i:1;s:4:"[/B]";}s:8:"children";a:1:{i:0;s:18:"Maragoni 效应:";}}i:25;s:133:"
泡沫的内外层里,亲水基之间、疏水基之间都存在着电荷排斥,这种排斥力从横向撑起了泡沫层。
";i:26;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-572629b33fba0a15ca7cc02cb62be892_b.jpg";}}i:27;s:214:"
小结一下:
1,只要有液气混合就会有泡沫,但排水效应会加速泡沫消失,宏观上我们说的泡沫实际上是“稳泡”。
2,表面活性剂是较常见的“稳泡”物质。
";i:28;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-1f929d78920b9defc4bd0e4e9a64b85c_b.jpg";}}i:29;s:561:"
英国人制造出世界上最大的泡泡
二、洗发水的清洗机理
1,我们洗去的是什么?
答:头发上的污垢主要是分泌的皮脂、汗渍、头皮屑、来自外界的灰尘、发用品的残留,如发蜡,发胶等。
在这些污垢里面,能溶于水的都好办,用水一冲就溶解了。一些粒径较大的物理颗粒也好办,水一冲,手一搓,基本上也都冲刷走了。比较难洗去的就是皮脂,我们洗碗洗衣服的时候都深有感受,油锅比电饭锅难洗的不是一点两点。
";i:30;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-2b954fb5ed1873d58e758ed235a40b8a_b.jpg";}}i:31;s:279:"
我洗刷刷、洗刷刷
所以,我们洗衣服要用洗衣粉。
洗碗,要用洗洁精。
洗手,要用洗手液。
洗脸,要用洗面奶。
洗头发,就要用洗发水啦。
万变不离其宗,这些日化品的内核就五个字——表面活性剂。
";i:32;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-94dcd16a3c076dce0cc5090a2138cd14_b.jpg";}}i:33;s:228:"
激情带盐
2,洗发水工作原理
洗发水中含有 10-20%的表面活性剂,这个浓度已经很高了,你把洗发水兑点水在手上搓搓,泡沫就起来了,这就是表面活性剂在帮忙稳泡啊。
";i:34;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic4.zhimg.com/v2-4117472d2101415a3445f55cf41a34f7_b.jpg";}}i:35;s:251:"
细究一下洗发水的内部,由于浓度远超 cmc(临界胶束浓度,大家感兴趣的话,我另外开贴),表面活性剂不光分布在表面,更会在内部形成“胶束”,亲水基朝外,憎水基朝内,如下图:
";i:36;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-48b46700375f61f4ef9f494bd4405928_b.jpg";}}i:37;s:238:"
中间形成球状就是胶束
而当这些胶束接触到油污后,“久旱逢甘霖”的憎水基(亲油基)就如同下图一般,紧密团结在领(you)袖(wu)的周围,将他裹的严严实实,密不透风。
";i:38;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic1.zhimg.com/v2-95d0d085cf0fa045567d642506362d44_b.jpg";}}i:39;s:94:"
这些胶束带着油垢一起,从毛发或皮肤上脱落,溶入水中,如下图:
";i:40;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-4f7a5f912177f4ca493b14ecea66c942_b.jpg";}}i:41;s:259:"
这个过程叫做乳化,通过表面活性剂将油性物质和水互溶,外观上形成乳液的效果。其实,也并不是所有的乳液都和牛奶一样,很多看起来清澈透明的化妆水也是乳液的一种,只不过是微乳液。
";i:42;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic4.zhimg.com/v2-e563af17edb7535aa4a78ab88d5aa0c7_b.jpg";}}i:43;s:382:"
不同粒径乳液的外观不一样,粒径越小,越澄清透明
三、回到问题:为啥“起的沫少就脏,起的沫多就干净”呢?
这表面活性剂也不是永动机,也要讲能量守恒、物质不灭这些基本法的。当一部分表面活性剂形成了胶束,当好了“乳化”的班,它们就无法分身,去做“起泡”的活啦。
";i:44;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic3.zhimg.com/v2-a0d8553c2bf6f0e6abfdcd89fa704c42_b.jpg";}}i:45;s:211:"
从我们生活经验来说,如果过了好几天再洗头,洗发水起的泡泡确实是少很多的,这并不是洗发水变质了,而是来自以上的道理。我们每个人都可以去试试。
";i:46;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic4.zhimg.com/v2-b0e83f7b83d2203c0c66e836fb74a24b_b.jpg";}}i:47;s:492:"
我们还可以得出一个引申的结论,并不是泡沫多才说明洗发水效果好,洗发利用的是表面活性剂的“乳化”性能,泡沫多其实是说明你多用了,浪费了。(当然泡沫多会增加清洗的效果,这是另一个话题)
现在很多领域都已经开始研发使用低泡的表面活性剂,比如低泡洗衣液等,因为泡沫多了,你家的洗衣机就要溢出啦。这从另一个方面说明,泡沫并不是越多越好。
";i:48;a:4:{s:3:"tag";s:3:"img";s:6:"option";N;s:8:"original";a:2:{i:0;s:5:"[IMG]";i:1;s:6:"[/IMG]";}s:8:"children";a:1:{i:0;s:64:"https://pic4.zhimg.com/v2-7541773c1834a1181a6b86d9aa3b839b_b.jpg";}}i:49;s:660:"
总之,表面活性剂是一门很神奇的科学,它可不仅仅是有起泡和乳化作用,还有很多种功能,比如:润湿、清洗、渗透、润湿、增溶、增粘等等。在各个领域都会用到,比如纺织、日化、涂料、造纸、清洗、油田、水处理、润滑油、有机硅、农药等等。
有人说过,如果没有表面活性剂,有 90%的化学工作者将会失业。现在一直流行生化环材劝退论,其实我就觉得,如果你学习表面活性剂的话,最起码不会失业啊。
最后,如果你有关于表面活性剂的任何问题,都可以向我提问,大家互相学习!
";i:50;a:4:{s:3:"tag";s:3:"url";s:6:"option";s:39:"https://www.zhihu.com/question/32276500";s:8:"original";a:2:{i:0;s:47:"[URL='https://www.zhihu.com/question/32276500']";i:1;s:6:"[/URL]";}s:8:"children";a:1:{i:0;s:12:"阅读原文";}}}, 1621686945, 1714703704
Run Time: 0.006680