php根据操作系统转换文件名大小写的方法
在php的开发中我们要包含某个文件通常的代码是这样的:
<?php
if(is_file($fileName))
require $flleName;
在windows,linux下运行都没有问问题: 假设现在要包含一个 D:/web/webServer/A.php文件
在传值的时误传了D:/web/webServer/a.php 在windows下运行时也会把D:/web/webServer/A.php包含进来,因为windows是不区分大小的,放在linux下就会报错了
那如做到在windows加载也能区分大小写呢?代码如下:
if(is_file($fileName)){
//PHP_OS 当前运行的操作系统
if(strstr(PHP_OS,'WIN')){
//realpath($fileName) 会转换文件名的大小写 /web/A.php 如果A.php不存在而a.php则会返回/web/a.php
if(basename(realpath($fileName)) == basename($fileName))
require $fileName;
else
echo '请检查文件的大小写';
}else
require $fileName;
}
相关推荐
-
PHP stristr() 函数(不区分大小写的字符串查找)
如果查找成功,则返回字符串的其余部分(从匹配点),如果没有找到该字符串,则返回 false. 版本支持:PHP 3+ 语法: stristr(string,find) 说明: string 必需.规定被搜索的字符串. find 必需.规定要查找的字符.如果该参数是数字,则搜索匹配该数字对应的 ASCII 值的字符. 提示: 该函数是二进制安全的. 该函数对大小写不敏感.如需对大小写敏感的搜索,请使用 strstr(). 例子: 例子 1 复制代码 代码如下: <?php echo stristr
-
php的大小写敏感问题整理
PHP对大小写敏感问题的处理比较乱,写代码时可能偶尔出问题,所以这里总结一下. 但我不是鼓励大家去用这些规则. 推荐大家始终坚持"大小写敏感",遵循统一的代码规范. 一.大小写敏感 1. 变量名区分大小写 所有变量均区分大小写,包括普通变量以以及$_GET, $_POST, $_REQUEST, $_COOKIE, $_SESSION, $GLOBALS, $_SERVER, $_FILES, $_ENV等: 复制代码 代码如下: <?php $abc = 'abcd'; ech
-
PHP随机字符串生成代码(包括大小写字母)
第一种:利用字符串函数操作 复制代码 代码如下: <?php function createRandomStr($length){ $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';//62个字符 $strlen = 62; while($length > $strlen){ $str .= $str; $strlen += 62; } $str = str_shuffle($str); return
-
linux下使用ThinkPHP需要注意大小写导致的问题
弄了一下午,偶然想起linux是识别文件大小写的,查看了一下代码,发现实例化类的时候并没有注意文件大小写.如 $dao = D("inventoryview") 对应的视图文件是InventoryViewModel.class.php.这样在windows下跑是没问题的,但是在linux下,需要写成$dao = D("InventoryView"). 哎,小细节容易导致大问题啊.还好解决了~~嘿嘿
-
让ThinkPHP支持大小写url地址访问的方法
本文实例讲述了让thinkphp支持大小写url地址访问的方法.分享给大家供大家参考.具体实现方法如下: 通常ThinkPHP默认是区别大小写url的,这种也是与linux系统一样在小写url是两个不同的名字,但我们使用windows习惯了对于大小写都认为一样的,所以还是要根据用户习惯来处理问题,下面我们一起来看问题解决方法. 在配置文件中开启了thinkphp的大小写识别功能,使链接大小写都可以正常访问: 'URL_CASE_INSENSITIVE' =>true 文件命名都是规范的,但是在模
-
PHP英文字母大小写转换函数小结
每个单词的首字母转换为大写:ucwords() 复制代码 代码如下: <?php$foo = 'hello world!';$foo = ucwords($foo); // Hello World! $bar = 'HELLO WORLD!';$bar = ucwords($bar); // HELLO WORLD!$bar = ucwords(strtolower($bar)); // Hello World!?> 第一个单词首字母变大写:uc
-
PHP大小写问题:函数名和类名不区分,变量名区分
PHP对大小写敏感问题的处理比较乱,写代码时可能偶尔出问题,所以这里总结一下.但我不是鼓励大家去用这些规则.推荐大家始终坚持"大小写敏感",遵循统一的代码规范. 1. 变量名区分大小写 复制代码 代码如下: <?php $abc = 'abcd'; echo $abc; //输出 'abcd' echo $aBc; //无输出 echo $ABC; //无输出 2. 常量名默认区分大小写,通常都写为大写(但没找到能改变这个默认的配置项,求解) 复制代码 代码如下: <?ph
-
PHP字符串word末字符实现大小写互换的方法
本文实例讲述了PHP字符串word末字符实现大小写互换的方法.分享给大家供大家参考.具体实现方法如下: 一.要求: 给出一个字符串如 "A journey of, a thousand 'miles' must can't \"begin\" with a single step." ,通过 PHP 程序处理变成 "a journeY oF, A thousanD 'mileS' musT can'T "begiN" witH A si
-
php根据操作系统转换文件名大小写的方法
在php的开发中我们要包含某个文件通常的代码是这样的: 复制代码 代码如下: <?php if(is_file($fileName)) require $flleName; 在windows,linux下运行都没有问问题: 假设现在要包含一个 D:/web/webServer/A.php文件 在传值的时误传了D:/web/webServer/a.php 在windows下运行时也会把D:/web/webServer/A.php包含进来,因为windows是不区分大
-
C#将指定目录所有文件名转换成小写的方法
本文实例讲述了C#将指定目录所有文件名转换成小写的方法.分享给大家供大家参考.具体如下: using System; using System.IO; using System.Linq; namespace RobvanderWoude { class LoCase { static int Main( string[] args ) { string dir = string.Empty; string filespec = string.Empty; char[] trailingback
-
C#将制定目录文件名转换成大写的方法
本文实例讲述了C#将制定目录文件名转换成大写的方法.分享给大家供大家参考.具体如下: using System; using System.IO; using System.Linq; namespace RobvanderWoude { class UpCase { static int Main( string[] args ) { string dir = string.Empty; string filespec = string.Empty; char[] trailingbacksl
-
PHP 实现人民币小写转换成大写的方法及大小写转换函数
下面一段代码给大家分享php实现人民币大小写转换的方法,具体代码如下所示: <?php header("charset=utf-8;"); function numTrmb($num){ $d = array("零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", &q
-
php ckeditor上传图片文件名乱码解决方法
打开editor/filemanager/connectors/php目录下commands.php,找到FileUpload函数,在 复制代码 代码如下: $sExtension = substr( $sFileName, ( strrpos($sFileName, '.') + 1 ) ) ; $sExtension = strtolower( $sExtension ) ; 后添加 复制代码 代码如下: $sFileName = rand(0,100).".".$sExtensi
-
mysql表名忽略大小写配置方法详解
linux下mysql默认是要区分表名大小写的.mysql是否区分大小写设置是由参数lower_case_table_names决定的,其中: 1)lower_case_table_names = 0 区分大小写(即对大小写不敏感),默认是这种设置.这样设置后,在mysql里创建的表名带不带大写字母都没有影响,都可以正常读出和被引用. 2)lower_case_table_names = 1 不区分大小写(即对大小写敏感).这样设置后,表名在硬盘上以小写保存,MySQL将所有表名转换为小写存
-
Python批量更改文件名的实现方法
Python批量更改文件名的实现方法 前言: 由于后台数据有好多,但是文案提供过来的图片命名全部没有按照格式来命名,Python这么强大的语言,肯定是能够处理这个问题的,于是我就写了一个小脚本批量改文件名. 版本相关 操作系统:Mac OS X EI Caption Python版本:2.7 IDE:Sublime 思路 我的思路是这样的,在当前文件下创建一个新的目录newfile,然后把所有的文件拷贝过去重命名一下就行了 素材 文案提供过来的图片全部都是1.jpg,2.jpg--这样顺序递增的
-
java实现将字符串中首字母转换成大写,其它全部转换成小写的方法示例
本文实例讲述了java实现将字符串中首字母转换成大写,其它全部转换成小写的方法.分享给大家供大家参考,具体如下: public class TestSubstring { public static void main(String[] args) { String s = getConvert("adsJKJ3K21AfaAD134F13241d134134s141faAAFDF"); System.out.println(s); } //将一个字符串中的首字母转换成大写,其它的全部
-
Python如何转换字符串大小写
Python中的字符串方法是从python1.6到2.0慢慢加进来的,它们也被加到了Jython中.这些方法实现了string模块的大部分方法,如下表所示列出了目前字符串内建支持的方法,所有的方法都包含了对Unicode的支持,有一些甚至是专门用于Unicode的. 例如:s 是一个字符串变量 判断字符串的方法 s.isalnum() #所有字符都是数字或者字母 s.isalpha() #所有字符都是字母 s.isdigit() #所有字符都是数字 s.islower() #所有字符都是小写 s
-
Python 忽略文件名编码的方法
问题 你想使用原始文件名执行文件的I/O操作,也就是说文件名并没有经过系统默认编码去解码或编码过. 解决方案 默认情况下,所有的文件名都会根据 sys.getfilesystemencoding() 返回的文本编码来编码或解码.比如: >>> sys.getfilesystemencoding() 'utf-8' >>> 如果因为某种原因你想忽略这种编码,可以使用一个原始字节字符串来指定一个文件名即可.比如: >>> # Wrte a file usi
随机推荐
- asp.net core MVC 过滤器之ActionFilter过滤器(2)
- Delphi2007编译的程序在Win7下图标模糊的解决办法
- JavaScript trim 实现去除字符串首尾指定字符的简单方法
- JavaScript数据结构链表知识详解
- js实现大转盘抽奖游戏实例
- PHP4 与 MySQL 数据库操作函数详解
- JSP生成静态页实践及其设计思想[转]
- js实现select选择框效果及美化
- 杨绛 一百岁感言(世界是自己的,与他人毫无关系)
- Java如何获取Date的“昨天”与“明天”示例代码
- node.js中的buffer.write方法使用说明
- 动态JavaScript所造成一些你不知道的危害
- 怎样防止别人用ipc$和默认共享入侵
- Windows XP的另类垃圾排毒攻略
- 举例讲解Java中的多线程编程
- php编译安装php-amq扩展简明教程
- node打造微信个人号机器人的方法示例
- Win8.1下安装Python3.6提示0x80240017错误的解决方法
- Django框架model模型对象验证实现方法分析
- JavaScript基于遍历操作实现对象深拷贝功能示例