PHP 开源框架 CI、ThinkPHP、Laravel 的优缺点及选型依据

PHP , , ,
答案 CI非常轻量级,是一个简单的MVC框架,性能也很快。 ThinkPHP3.2国内使用比较多,优点是文档非常多,各种问题解决方案比较多,缺点是代码不够规范,理念落后。 Laravel 是一个现代化的PHP开发框架,代码优雅,使用 composer 方式扩展功能,社区活跃,缺点是比较重,比较适合做后台管理或…

PHP文件末尾是否应该加 ?> 结束符号,为什么?

PHP
答案 主要防止 include,require 引用文件,把文件末尾可能的回车和空格等字符引用进来。 还有一些函数比如 session_start() 必须在没有任何输出之前调用,就会造成不是期望的结果。 PHP文件的编码不包含BOM的 UTF8,这也是PSR-2中的规范,纯PHP代码文件必须省略最后的 ?> 结束标签。

PHP函数内部 static 和 global 关键字有什么作用?

PHP
答案 static 是静态变量,在局部函数中存在且只初始化一次,使用过后再次使用会使用上次执行的结果; 作为计数,程序内部缓存,单例模式中都有用到。 global 关键字,引用全局变量,wordpress中大量用到,如面向过程开发。 static 静态方法,是类的成员方法,但不需要实例化类可直接使用 $GLOBAL 在…

PHP常用运算符优先级?

PHP
答案 优先级从高到底: 算术运算符:* / % 算术运算符:+ - . 比较运算符:> < == === 逻辑运算符:&& || 赋值运算符:= *= /= 逻辑运算符:and or

PHP有哪些魔术常量?

PHP
答案 __DIR__:文件所在的绝对路径,等价于 dirname(__FILE__)。 __FILE__:文件的完整路径和文件名。 __NAMESPACE__:当前命名空间的名称。 __CLASS__:类的名称。如过需要获取后期绑定的类名,使用 get_call_class()。 __TRAIT__:Trait 的名字。 __METHOD__:类的方法名。 __FUNCTION__:…

PHP创建字符串有哪几种方法?它们之间有何区别?

PHP
答案 有4中方法。 单引号,不能解析变量和换行符\n,执行效率高。 $str = '这是内容。'; 双引号,可以解析变量和换行符\n,效率比单引号低。 $test = '测试'; $str = "这是$test内容"; NowDoc,用于输入大量符串和换行符\n,字符串内不能解析变量。 $a = <<&…