php--面试题整理

一、Echo()print()、print_r()区别

Echoprint不是函数,是一个语言结构;echo可以输出多个参数,print只能打印一个参数;print_r可以打印出结构,还有var_dump


一、Mysql中,int(10)和varchar(10)里面的10有什么区别?

一个是数字类型,一个是字符类型。

Int的范围从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为4个字节。Int(1)和int(11)是一样的,int后是否跟数字与最大值没有关系。

Varchar的长度为0~255个字符。Char和varchar后面的数字是存储长度。

 

二、怎样判断字符c是否存在字符串‘abcd’中?

Strstr(),如果存在返回这个字符后面的字符串(包括c),没有返回false;

Strpos(),如果存在返回这个字符所在字符串的位置,没有返回false;

Explode(),分割字符串为数组,如果数组大于1,则有。

 

三、比较变量3,变量9这两个值大小,有哪些方法,可以多种

如果是int,直接>比较;

如果是字符串,Strcmp();

 

四、当前文章id为182,如何取得上一篇和下一篇文章的id

当前文章id为$id

上一篇:select * from news where id<$id order by id desc limit 0,1

下一篇:select * from news where id>$id order by id asc limit 0,1

 

五、Mysql的执行顺序

开始--from--where--group by--HAVING--ORDER BY--SELECT--LIMIT

 

六、请写出5个操作数组的内置函数

In_array() array_search() array_keys() array_value()

Array_key_exits() count() sizeof() array_count_values()

Array_unique() array_reverse() array_flip() sort()

Asort() shuffle()

 

七、Jsonp是什么?什么场景下会使用?除了jsonp还有其他的实现方法么?

Jsonp是json的一种使用模式。可用于解决主流浏览器的跨域数据访问问题。

其他实现方法:让服务器做代理;用Flash

 

八、建立一张论坛帖子表格式如下:

Id int(10) 主键id

Title varchar(50)标题

Cid smallint(5) 所属板块

Postdate int(10)发表时间戳

Display tinyint(1)是否显示(1显示,0不显示)

A.SQL条件是要按发布时间倒序,查看某分类下所有可显示的帖子

SELECT * from forum where cid=1 AND display=1 ORDER BY postdata DESC;

B.为表建立合理的索引

建立和使用索引的注意事项:

索引要建立在经常进行select操作的字段上;

索引要建立在值比较唯一的字段上;

对于那些定义为text、image和bit数据类型的列不应该增加索引

当修改性能远远大于检索性能时,不应该创建索引

在where和join中出现的列需要建立索引

在以通配符%和_开头做查询是,mysql的索引是无效的

 

一、写一个匹配网页内的所有图片的正则表达式

/<img([^>]*)\s*src=('|\")([^'\"]+)('|\")/

 

二、php代码的时候,遇到内存超出限制大小时候怎么做?

php.ini中去设置;

也可以再代码临时增加,ini_set(),在用unset()清空变量

 

三、CLICGI代表什么?他们有什么区别?

CLI:命令行界面

CGI:公共网关接口

SAPI:服务器应用程序接口(CLICGI都是SAPI的类型)

ISAPIISAPI服务器扩展

CGISAPIphpweb服务器上运行的php环境;CLIphp在命令行运行的接口

 

四、Git push是干吗的?

提交代码到服务器上


一、$str=”php”; $$str = “teems”; $$str .=”coffice”; echo $php;

.=连续定义变量 输出为:teemscoffice

 

$n 3.5;
$a floor($n);
$b round($n);
echo $a.$b;
echo "<br/>";
echo $a+$b;

输出34,7 floor向下取整,round四舍五入

二、写出php程序,取文件名的后缀,两种方式。

//第一种

$fname "hello.txt";
$data strpos($fname,".");
if($data)
    $extension substr($fname,$data+1);
    echo $extension;

//第二种

$fname "hello.txt";
$data explode(".",$fname);
var_dump($data);
if($data)
    $extension count($data)-1;
    echo $data[$extension];

//第三种

$fname "hello.txt";
$data pathinfo($fname);
echo $data['extension'];

 

三、写出无限级的分类表结构,表个数不限

 

四、Sql脚本随机取出一条数据

SELECT * from user_main ORDER BY RAND() limit 0,1;

 

Sql脚本取出的数据birthday大于1983-01-01(birthday是varchar类型)

SELECT * from `user` WHERE birthday>'1983-01-01'





你可能感兴趣的:(php--面试题整理)