spArgs() 方法的大小写问题
发布于:2022-01-17 09:50:54
#1 littleu
发现这个函数会将所有的数据转换为小写,请问有办法获取正确的字符串么?
举例说明下。
class test extends spController
{
function index()
{
echo $this->spArgs('name');
}
}
好,现在访问
http://localhost/test?name=Jake打印出来的的是小写的 jake,而非正确的首字母大写的 Jake。
如何解决?
2011-05-02 15:07:15
#2 jake
spArgs没有对数据进行任何修改,spArgs是直接使用$_GET/$_POST的值。
这是部分浏览器的特性,会把地址栏传输的参数都转换成小写。
2011-05-02 23:36:15
#3 littleu
回复 2 jake 经过测试似乎不是浏览器的问题?
把 htdocs 下面的所有文件转移,新建一个 index.php
代码直接写
echo $_GET['name'];
?>
好,现在访问
http://localhost/index.php?name=Jake是可以正常显示 Jake 的,并不会出现大小写转换的的问题...
Chrome/Firefox 都测试过了,没问题...
我找到问题所在了...我启用了 spUrlRewrite,似乎跟这个有关,这个 spUrlRewrite 有 bug...
源代码里面是这样的 strtolower(substr($_SERVER["REQUEST_URI"]...
需要 fix 一下,麻烦 Jake 了。
strtolower 的范围应该到?前截至。
比如一楼里的这个链接
http://localhost/test?name=Jake 经过处理后就真的变小写了,跟浏览器无关。SpeedPHP 欠考虑了这一点。
SpeedPHP 真的很不错,希望 Jake 再接再厉,也很高兴又帮忙找到了一个小 bug~
2011-05-03 00:11:42
#4 jake
:handshake 好的,谢谢楼上找出这bug,稍后将修正好:lol
2011-05-03 10:13:42
#5 maomaoweb
怎知修正啊。急急
2011-05-17 20:35:25
#6 maomaoweb
strtolower()为什么要强制转换成小写呢?
2011-05-17 20:51:52
#7 dhs789520
回复 4 jake 请问老大修正了这个问题了吗?,我的linux空间对文件大小写很敏感,所以不能读文件和目录,等待in....
2011-06-17 22:15:31
#8 dhs789520
回复 1 littleu 你解决了吗?给个方案先?
2011-06-17 22:17:53
#9 jake
。。。都用小写不就好了吗?linux很少有大写的东西。。。
2011-06-17 22:23:31
#10 dhs789520
回复 9 jake 哈哈,JAKE 老大,我的空间里面的 SPEED PHP框架 文件夹的文件名可就是有大写有小写的啊,
我现在做一个文件管理系统,却没办法管理SPEED PHP里面的内容啊
2011-06-18 11:28:18
#11 dhs789520
回复 9 jake 你自己的框架文件名就是有大写有小写的啊
2011-06-18 11:28:59
#12 jake
文件管理器?urlrewrite?
你可以想一下用get或者别的方法,不一定要用spArgs。
2011-06-18 11:45:06
#13 phpha
哈哈哈,同意楼上JAKE~
2011-06-18 11:47:07
#14 jake
UrlRewrite大小写问题已经修复,请从SVN上面下载最新框架。 :handshake
http://code.google.com/p/speedphp/source/detail?r=180
2011-06-22 07:36:45