PHP内存在字符串操作方面效率低吗?

pab*_*ven 6 php

今天我今天遇到了PHP和MySQL 的问题(这是问题),这个问题已经解决,但它唤醒了一个新的,更理论化的问题.

问题是在MySQL数据库中我有一个类型为的字段VARCHAR(64).当试图从PHP脚本插入一个字符串时,完整的字符串超过64个字节,var_dump证明它有71个.但是,这是我不明白的,运行完全相同的查询,具有完全相同的字符串,但从phpmyadmin手动,它确实适合64字节的SQL字段.

所以,这是问题所在.是否有任何理由为什么php中的相同字符串比直接插入数据库需要更多内存?

编辑:有人建议复制与charset相关的问题.MySQL中的charset是utf8_general_ci.在PHP中我没有定义字符集,但如果print(mb_detect_encoding($string));我得到它是ASCII编码.可能这是原因吗?如果我认为ASCII占用的内存少于utf8,我有多难?(无论如何,在我编写的脚本中mysqli_set_charset($con,"utf8");,它应该在查询之前转换为utf8)