php 语言基础
性能优化
算法上的优化
多用内置函数,少用魔法函数、错误抑制符、正则
开启opcache
缓冲区
消息队列异步 (发邮件等功能)
少操作文件、网络请求
连接池
用到的时候再new,用完了及时销毁
访问数组arr[name],会先把name当作常量,慢
break 2; continue 2;
require在脚本执行前引入,文件不存在则报错
include在执行到的时候引入,文件不存在发出警告
header('content-type:text/html; charset=utf-8'); 以什么编码方式解析什么类型的文档
header('Location:http...'); 跳转
function fun(){ static $i=0; }
cgi (Common Gateway Interface) 通用网关接口 服务器和应用程序通信的协议
缺点:不停的启动和销毁
fast-cgi 是个协议 , 将cgi程序保持在内存中
php-cgi 实现了cgi协议
php-fpm 实现了fast-cgi 用来管理php-cgi
类复制,等号传递的是引用,传值需要用clone
设置发出数据的编码:Content-Type包含charset=utf-8,可在php.ini里配置default_encoding=utf-8
或用header()函数
设置接收数据的编码:一般地,生成表单页面时使用一个编码,浏览器会使用同样的编码发回数据。
或者在<form>里包含accept-charset="utf-8" (并不是所有浏览器都支持)
类型约束:
函数的参数可以指定必须为对象(在函数原型里面指定类的名字),接口,数组或者 callable。
如果使用null作为参数的默认值,在调用函数的时候依然可以使用null作为实参。
如果一个类或接口指定了类型约束,则其所有的子类或实现也都如此。
类型约束不能用于标量类型如 int 或 string。Traits 也不允许。
<?php echo 1; ?>
<script language="php"> echo 1; </script>
<? echo 1; ?>
<% echo 1; %>
<?= "abc" ?>
<%= "abc" %>
注释:// # /*..*/
比较操作符 <> <=> ??
字符串、null支持自增,不支持自减,float支持自增和自减(1)
反引号 echo `ipconfig` 等价于 shell_exec('ipconfig');
换行符:echo $username, PHP_EOL;
json必须用双引号
jquery ajax
$.ajax({
'url':'abc.php',
'data':{'username':'zhangsan', 'age':18},
'success':function(data){ ... },
'type':'post', //不写type 默认为get
});
国际化和本地化
图片:建立多个文件夹

浙公网安备 33010602011771号