symfony 中propel 连接数据库的字符集设置

之前玩了一段symfony,由于没有项目的动力,只是了解一下,最终还是放下,
最近接了些私活,最近写了几个小项目,由于时间紧,感觉有需要找一个框架来提速一下,就又拾起了symfony

数据库存放的时候用的gb2312,页面用的gb2312,按symfony默认的数据库及页面的编码显示错误,经过找资料及看symfony的sfPropelDatabase中的相关参数,于是修改了 app/module/config/settings.yml 的相关内容
  1. all:
  2. .settings:
  3. #Formsecuritysecret(CSRFprotection)
  4. csrf_secret:false#UniquesecrettoenableCSRFprotectionorfalsetodisable
  5. #Outputescapingsettings
  6. escaping_strategy:false#Determineshowvariablesaremadeavailabletotemplates.Acceptedvalues:on,off.
  7. escaping_method:ESC_SPECIALCHARS#Functionorhelperusedforescaping.Acceptedvalues:ESC_RAW,ESC_ENTITIES,ESC_JS,ESC_JS_NO_ENTITIES,andESC_SPECIALCHARS.

  8. #下面的新加的
  9. charset:gb2312#如果前台的页面输出是gb2312 此处必须设置
上面的修改将会改变网页输出编码为gb2312

但上面的修改并不能改变数据库连接的字符集设置
你需要对your_web_root/config/database.yml做如下的设置
  1. all:
  2. propel:
  3. class:sfPropelDatabase
  4. param:
  5. dsn:mysql://root@localhost/new
  6. #下面的内容是新加的
  7. encoding:gb2312#相当于 setnamesgb2312
  8. persistent:true#mysql的持续连接

注解: symfony 默认的字符集是utf-8
如果你不知道一个类的相关参数,可以去PEAR/symfony中看相关类的内容,这也是一个不错的学习方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值