> 백엔드 개발 > PHP 튜토리얼 > 如何才能熟练掌握 PHP 的数组和字符串函数?

如何才能熟练掌握 PHP 的数组和字符串函数?

WBOY
풀어 주다: 2016-06-17 08:32:01
원래의
1024명이 탐색했습니다.

回复内容:

PHP 的数组和字符串 API 应该是所有类 C 语言中最反人性的一组 API 了。查手册吧,用多了会……查得很快。 首先,把所有的数组和字符串函数过一遍,大概知道它们能用来解决什么问题。
然后,做项目,当你需要用到某些函数的时候,去查手册,查到的同时顺便看看前后的几个函数以及手册里标注的相关函数。
经过一段时间的积累以后你就熟练掌握这些函数了。
如果你有空,还可以尝试自己去实现这些函数,通常你会写出比默认实现更高效的代码来。
你会发现,它其实和记单词是一样一样的,不是么? 多用一些,常用的记住,手册随时查,如果实在记不住就用 zend ,有提示哈~ 再精通也有想不起来怎么拼的时候,查个手册不丢脸。 PHP: Arrays - Manual
PHP: Strings
带人的时候我都会嘱咐他们,把 array 相关函数一个一个的看,多看几遍

不分 list 和 dict 是 PHP 的一个特点
如果你的世界观不像有些人一样是纯二元的、一定要说成缺点或者优点的话

有些场合有人会说“这要是强类型的就不会搞这么麻烦了”,另外有些场合有人会说“这要是弱类型的就不会搞这么麻烦了”,当然我们都知道,任何一个 feature 都有他的目的,在特定条件下会获得额外的好处,相应的,也要付出代价。
PHP 里的 array 被故意设计成这样,只是作者基于 PHP 使用场景的考量,而不是因为作者不知道 list 和 dict 而犯的一个错误。PHP 有很多历史遗留下来的错误,比方说 array_map() 和 array_filter(),他们两个都是关于 array 的函数,都需要 callback 和 array 两个参数,但是参数的顺序是相互反着的。我的意思是,array_map/array_filter 有错误,但 array 本身还谈不上错误。作者只是想降低上手门槛,以及在一些场合下能减少代码量,副作用是降低效率,和有些时候会把使用者弄晕

可能扯远了,但我还想贴一下我以前对 PHP 的评价
PHP 能足够流行,主要原因之一是这语言下贱,我想如果所有语言都能测一下开发者的平均智商的话,应该 PHP 的开发者的平均智商是最低的。但这话绝不是冒犯任何人,想承认他流行就必须承认这是因为连智商 90 的人都敢尝试给 PHP 写 Framework 才能导致这么流行,这是一个事实,跟任何一个具体的使用者是谁、怎么用无关。我在开始了解其他语言后,才知道这么个事实:其他几乎所有语言的基础库,都是用同样的语言写就的,唯独 PHP 的基础库都是靠 C 的。去年看到一片文章说 PHP 不是语言,深表同意,我认为 PHP 的位置实际处于伪代码和程序语言之间,以快和下贱为特色,你可以快速搭建原型,需要人手时可以找一群民工来写,这语言当然就很厉害了。《黑客与画家》给我最大的一个启示就是,尽管我明白优化乃万恶之源,但实际写代码的时候还是容易拘泥于细节,现在看来最痛恨的事情就是在给一个应用做第一版的时候,代码还不够伪代码化。你是程序员,你是画家,你要最快的速度让一个程序能跑起来。画一幅受欢迎的画是程序员要做的,把画印刷成无数分卖往全世界是工程师要做的。真等 facebook 的网站运转起来了,还愁这世界找不到人改进下 memcache 的 pecl 就节省出上万台机器么。
以及 直到刚才,我才想明白大家对 PHP 的用法是如此迥异

说了这么多是想告诉楼主,PHP 作为互联网行业最被广泛使用的语言,以及最被频繁调侃的语言,它有很多特征,而这些特征造就了 PHP 的地位和名声 照着PHP手册每个看一遍,然后自己找一些功能代码来写一下,举一反三。对数组的功能和使用方法要比较熟悉才可以,现在一般的IDE上都有这些函数库的,配置一下随查随用。
熟练没有捷径,只有反复的使用和练习! read the fuck manual, and comment 多写代码, 看手册 可以看一些优秀程序的代码和动手写点什么,主要还得多动手 除了多写代码外...找不出其他有效方法 每次遇见数组或者字符串要处理的时候,先去网上搜索一下,看有没有类似的函数。
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿