PHP字符串和数组操作

*字符串查找 $email = 'name@example@.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com $domain = strrchr($email, '@'); echo $domain; // prints @.com <?php //测试时文件的编码方式要是UTF8 $str='中文a字1符'; echo strlen($str).'<br>';//14 echo mb_strlen($str,'utf8').'<br>';//6 echo mb_strlen($str,'gbk').'<br>';//8 echo mb_strlen($str,'gb2312').'<br>';//10 ?> 利用这两个函数则可以联合计算出一个中英文混排的串的占位是多少(一个中文字符的占位是2,英文字符是1)echo (strlen($str) + mb_strlen($str,'UTF8')) / 2; mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题。 *字符串的截取: substr(); //截取字符串从什么位置到什么位置 mb_substr(); //截取字符串从什么位置到什么位置,可以正确截取汉字 iconv_substr(); //截取字符串从什么位置到什么位置,可以正确截取汉字 mb_strcut(); //截取汉字 //反转中文字符和特殊字符 $str = "中国北京dfsdfw3cc58887576\]]ppe@渴来!@##%%^路&*&**(uuu"; $result = ""; $legth = mb_strlen($str, "utf8"); for ($i=$legth-1; $i>=0; $i--) { $result .= mb_substr($str, $i, 1, "utf8"); } *GET类经常使用的函数 get_class_methods() // 所有方法 get_included_files()//返回当前页所有加载的文件 get_declared_classes()// 返回当前页所有class get_declared_interfaces()// 返回所有的接口 get_defined_functions()// 返回所有的function get_defined_vars()// 返回当前页所有的变量 get_current_user()// 返回当前用户 get_defined_constants()// 返回所有常量 get_loaded_extensions()// 获取PHP当前加载的所有扩展 get_extension_funcs('xml')// 获取指定扩展的所有方法列表 extract($arr);用于把数组中的元素转换成变量导入到当前文件中,键名当作变量名,值作为变量值 *数组的分段 array_slice($arr,0,3);可以将数组中的一段取出,此函数忽略键名 array_splice($arr,0,3,array(”black”,”maroon”));可以将数组中的一段取出,与上个函数不同在于返回的序列从原数组中删除 array_walk($arr,’function’,'words’);使用用户函数对数组中的每个成员进行处理(第三个参数传递给回调函数function) array_mpa(”function”,$arr1,$arr2);可以处理多个数组(当使用两个或更多数组时,他们的长度应该相同) array_filter($arr,”function”);使用回调函数过滤数组中的每个元素,如果回调函数为TRUE,数组的当前元素会被包含在返回的结果数组中,数组的键名保留不变 array_reduce($arr,”function”,”*”);转化为单值函数(*为数组的第一个值)

------小菜------

采用 MyISAM 的考虑:  R/W > 100:1 & update 相对较少  并发不高,不需要事务  表数据量小  硬件资源有限 采用表存储引擎-InnoDB  OLTP,R/W 相当,频繁更新大字段  表数据量超过 1000 万  安全性和可用性要求高  并发高 InnoDB 调优窍门 • 尽量使用短的,整型主键 • Load/Insert 数据时尽量用主键的顺序 • 增加日志文件大小 • 避免大的事务回滚 • 避免大量插入 • 尽量使用前缀索引

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2015-03-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏蓝天

带有通配符的字符串匹配算法-C/C++

日前某君给我出了这样一道题目:两个字符串,一个是普通字符串,另一个含有*和?通配符,*代表零个到多个任意字符,?代表一个任意字符,通配符可能多次出现。写一个算法...

29330
来自专栏申龙斌的程序人生

零基础学编程006:赋值语句

继续上次的一道练习题: 如何用Python打印这篇看上去很枯燥的《复利数据表》: (1+0.01) ^ 1 = 1.01 (1+0.01) ^ 2 = 1.0...

29750
来自专栏H2Cloud

智能指针shared_ptr【无锁设计基于GCC】

1. shared_ptr 介绍   使用过Boost的话对shared_ptr一定有很深的印象。多个shared_ptr指向同一个对象,每个shared_pt...

43530
来自专栏Coding迪斯尼

ReactJs开发自制Monkey语言编译器:实现内嵌函数调用以及增加数组类型

11320
来自专栏lgp20151222

thymeleaf:局部变量 th:with

当th:with被处理,firstPer变量创建一个局部变量和变量添加到map自上下文,以便它是用于评估和其他上下文中声明的变量从开始,但只有包含< div >...

18420
来自专栏GreenLeaves

Sington(单例模式)

一、使用Sington单例模式的动机(Motivation) 在软件系统中,经常有一些特殊的类,必须保证它们只有一个实例,才能保证它的逻辑正确性、以及良好的效率...

20170
来自专栏python百例

44-列表方法

10610
来自专栏技术沉淀

Python: json模块实例详解

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。

27040
来自专栏Java学习123

Java transient关键字使用小记

52720
来自专栏达摩兵的技术空间

js代码规范

20. 判断是否相等时候 采用=== 判断包括类型的相等 21. 尽量使用语法严格模式 消除代码之中的不友好;代码运行更快 ;保证运行的安全 ;为新版本的...

29830

扫码关注云+社区

领取腾讯云代金券