对工作中常用的方法进行小结,以便后续查找。
"; print_r($data); echo ""; if($is_exit) exit(); } } // 1.获取根目录,由后往前推 define("ROOT_PATH",substr(__FILE__,0,strlen(__FILE__)-17)); // 应用根目录 rtrim "test/fun_test.php" dump(ROOT_PATH); // 打印 /Applications/XAMPP/xamppfiles/htdocs/web/camel/shop_wms/ // 2.设置include_path set_include_path(get_include_path(). PATH_SEPARATOR . ROOT_PATH); //设置include path,包含文件可忽略ROOT_PATH部分 // 3.定义分隔符常量 define("DS", DIRECTORY_SEPARATOR); // 4.根据文件名获取类名和扩展名 dump("========4.根据文件名获取类名和扩展名============"); $impl_file = "/web/camel/shop_wms/test/hello.class.php"; list($impl_class, $ext) = explode(".", basename($impl_file), 2); // array explode ( string $delimiter , string $string [, int $limit ] ) // 如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。 dump($impl_class); // 打印:hello dump($ext); // 打印:class.php // 5.标准对象 dump("======== 5.标准对象 ============"); $objitem = new stdClass(); $objitem->file = "test/hello.class.php"; // 动态的分配属相 $objitem->class = "hello"; dump($objitem); // 6.从路径解析参数 dump("======== 6.从路径解析参数 ============"); if(DS=="") { // windows 环境下 $app_script_file = str_replace("/", DS, $_SERVER["SCRIPT_FILENAME"]); } else { $app_script_file = $_SERVER["SCRIPT_FILENAME"]; } dump($app_script_file); // 打印:/Applications/XAMPP/xamppfiles/htdocs/web/camel/shop_wms/test/fun_test.php // 这里将 $app_script_file 写死: $app_script_file = "/Applications/XAMPP/xamppfiles/htdocs/web/camel/shop_test/shop_api/boot/req_init.php"; $cnt = strlen(ROOT_PATH); $file_path = substr($app_script_file, $cnt, strlen($app_script_file) - $cnt); list($app_name, $other) = explode(DS, $file_path, 2); dump($app_name); // test dump($other); // fun_test.php // D:/xampp/php/php.exe -f D:/xampp/htdocs/shop/shop_api/webservice/web/index.php app_fmt=json app_act=taobao_api/taobao_trades_sold_get_all sd_id=4 start_modified="2012-09-01 00:00:00" end_modified="2012-09-11 00:00:00" $cnt = strlen("web".DS."app".DS); // /etast/shop_api/webservice/web/app/taobao_api.php // 7.路径数据过滤 dump("======== 7.路径数据过滤 ============"); $pathgrp = "/women/hek8dso*jid/heloid.php"; $pathgrp = preg_replace("/[^a-z0-9_/]+/i", "", $pathgrp); dump($pathgrp); // /women/hek8dsojid/heloidphp $rpos=strrpos($pathgrp,"/"); dump($rpos); // 17 if($rpos!==false){ $path=substr($pathgrp, 0, ++$rpos); dump($rpos); dump($path); // /women/hek8dsojid/ $grp=substr($pathgrp,$rpos,strlen($pathgrp)-$rpos); } else $grp=$pathgrp; dump($grp); // heloidphp // 8.用户定义的错误处理函数 dump("======== 8.用户定义的错误处理函数 ============"); // 用户定义的错误处理函数 function myErrorHandler($errno, $errstr, $errfile, $errline) { echo "Custom error: [$errno] $errstr
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/26257.html
摘要:通过输入任何错误的命令行,均可获得类似单词的正确命令行。倘若您对本文有兴趣,建议常用,以便最快获得结果。并没有看到任何优雅之处。表单请求验证器事件一句话简述简单实现的观察者模式设计模式的一种。表单请求验证器在下添加事件和监听器。 通过输入任何错误的 Artisan 命令行,均可获得类似单词的 Artisan 正确命令行。倘若您对本文有兴趣,建议常用 Ctrl+F,以便最快获得结果。并没...
摘要:尽管事务是维护数据库完整性的一个非常好的方法,但却因为它的独占性,有时会影响数据库的性能,尤其是在很大的应用系统中。由于在事务执行的过程中,数据库将会被锁定,因此其它的用户请求只能暂时等待直到该事务结束。 1、双引号和单引号的区别~双引号解释变量,单引号不解释变量~双引号解释转义字符,单引号不解释转义字符,但是解释和~能使单引号字符尽量使用单引号,单引号的效率比双引号要高(双引号要先遍...
摘要:常用判断条件的种类变量例如比较运算符例如逻辑运算符例如具体类型判断例如等变量无论变量是什么类型,都会转成类型空字符串空数组都是数值字符串都是类型的都是类型有三种情况定义并赋值为定义不赋值不定义不存在的主要是用于判断类型的,其他类型无论什么值 常用判断条件的种类 变量 例如:$var isset() empty() 比较运算符 例如:> < == != === !== 逻辑运算符 例如...
摘要:总结了框架与架构的区别。站在框架之外,看框架,看框架的共同特征与功用。由于框架所带来的问题,以性能可扩展问题,相对严重,所以分析性能的改造方向,总结了六大点。包括框架介绍,的使用,以及。 六、各项实践,性能评测 下面进入性能评测,评测我们相对就比较快速一些。直接用ab命令,来测试上面的所提及的一些改进。 以下评测,所有测试页面,均为:http://hjvote.app.ucai.cn/...
摘要:知识在于分享,也是希望和大家交流下,如何把后台管理系统写得能更具工程化,模块化,更有效率。后台管理系统多为端,所以和的技术运用不多,会根据产品需求进行优雅降级和渐进增强。 前两天看segmentfault的时候,突然间,想写篇文章总结一下那些年自己写过的后台管理系统。作为我前端的入门项目,我对后台管理系统的感情还是挺深的。本着以下几点原因,写了此文。 对后台管理系统做一个综合全面的总...
阅读 822·2021-11-15 17:58
阅读 3610·2021-11-12 10:36
阅读 3753·2021-09-22 16:06
阅读 912·2021-09-10 10:50
阅读 1300·2019-08-30 11:19
阅读 3290·2019-08-29 16:26
阅读 905·2019-08-29 10:55
阅读 3317·2019-08-26 13:48