$yesterday = mktime(0, 0, 0, date("m") , date("d")-1 , date("Y"));
echo date("Y-M-d h:i:s", $yesterday);
备注:mktime返回unix时间戳。
int mktime ([ int $hour
[, int $minute
[, int $second
[, int $month
[, int $day
[, int $year
[, int $is_dst
]]]]]]]
看php.net上的函数定义就可以看明白:
print — Output a string
echo — Output one or more strings
var_dump — Dumps information about a variable
print_r — Prints human-readable information about a variable
此外:
printf — Output a formatted string
sprintf — Return a formatted string
flush — Flush the output buffer
3、能够使HTML和PHP分离开使用的模板Smarty(非常优秀的模板引擎) , Phplib , Fasttemplete,
php4自带(IntegratedTemplate , IntegratedTemplateExtension)
另:
1.自己可以实现一个,其实也很容易,就是定义一些标记,或嵌入到html页面中,或代替一些常用的html标记如select,input等,便于程序,数据库处理。然后用程序调用包含模板标记静态页面。不过smarty是基于缓存机制的,有一个templates_c的目录,生成临时文件存放,这方面还比较先进.如果自己写的话复杂一些
2.逻辑与表现分离才是正道,而不是单纯的HTML与PHP分离
3.注意区别模板引擎和框架的区别,从MVC角度考虑。
4、使用哪些工具进行版本控制?
svn,cvs,VSS(ms)
5、如何实现字符串翻转?
strrev()
如果考虑充分(汉字问题),我找到以下代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
1.
function
reverse(
$str
)
{
$len
=
strlen
(
$str
);
$newstr
=
''
;
for
(
$i
=
$len
;
$i
>=0;
$i
--)
{
$newstr
.=
$str
{
$i
};
}
return
$newstr
;
}
2. join(
""
,
array_reverse
(
str_split
(
$str
,1))),
str_split
(
$str
,1)函数按长度分割字符串。
explode
()按分割符分割字符串.
3.
function
rev_str(
$str
)
{
$len
=
strlen
(
$str
);
for
(
$i
=0;
$i
<
$len
;
$i
++)
{
$temp_str
=
substr
(
$str
,0,1);
if
(ord(
$temp_str
) > 127)
{
$i
++;
if
(
$i
<
$len
)
{
$new_str
[]=
substr
(
$str
,0,3);
$str
=
substr
(
$str
,3);
}
}
else
{
$new_str
[]=
substr
(
$str
,0,1);
$str
=
substr
(
$str
,1);
}
}
return
join(
array_reverse
(
$new_str
));
}
|
6、优化MYSQL数据库的方法。
主要从几个角度来说:优化硬件、优化磁盘、优化操作系统、选择应用编程接口等。
参考:http://www.phpdo.net/index.php/optimization-mysql.html
此外优化查询也很重要,比如使用索引等。
7、PHP的意思Hypertext Preprocessor 超文本预处理器
mysql: now() ; date_format();
9、实现中文字串截取无乱码的方法。
其核心是处理中文问题,见blog:http://www.cnblogs.com/nbkhic/archive/2011/07/16/2108335.html
include如果包含出错,报错继续执行。
requre如果出错,终止执行脚本。
requre_once() ; 包含一次
更深入一步理解:http://blog.csdn.net/followingturing/article/details/8102789
12、如何修改SESSION的生存时间
该函数必须在 session_start() 函数调用之前调用:
session_set_cookie_params($lifeTime);
session_start();
通常是修改php.ini中某个配置项值,可google之。
13、有一个网页地址, 比如PHP研究室主页: http://www.phpv.net/index.html,如何得到它的内容?file_get_contents();
fopen('url',r),fread()都可以。
复杂的话,用curl。
14、在HTTP 1.0中,状态码401的含义是?; 如果返回“找不到文件”的提示,则可用 header 函数,其语句为?;401:需要用户验证。 get_headers();
其它常用:200,301,302,404等等。 详见:http://baike.baidu.com/view/1790469.htm
15、在PHP中,heredoc是一种特殊的字符串,它的结束标志必须?非常好的一项技术,用好了很方便,本质一句话:字符串输出技术。
http://blog.csdn.net/followingturing/article/details/8102862
16、谈谈asp,php,jsp的优缺点扫盲,不理。
17、谈谈对mvc的认识扫盲,不理。
18、写出发贴数最多的十个人名字的SQL,利用下表:members(id,username,posts,pass,email)
select top 10 username from members order by posts desc.
跟c一样,底层处理不一样,传值是复制到一个备份,传引用是类似于别名,地址传过去。
如果想要改变变量值,就把地址传过去,看需求。
20. 在PHP中error_reporting这个函数有什么作用?php.net says:“Sets which PHP errors are reported”
//禁用错误报告,也就是不显示错误
error_reporting
(0);
//报告运行时错误
error_reporting
(E_ERROR | E_WARNING | E_PARSE);
//报告所有错误
error_reporting
(E_ALL);
71.使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组
72.使用PHP描述顺序查找和二分查找(也叫做折半查找)算法,顺序查找必须考虑效率,对象可以是一个有序数组
73.写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数