当前位置: 编程技术>php
本页文章导读:
▪某大型网络公司应聘时的笔试题目附答案
1、有一个论坛,帖子的数据巨大,请简要说明如何提高用户搜索帖子的效率。 在程序方面,可以使用页面缓存技术。在前台界面着设计方面也可以让用户输入多一些的关键字,比如帖子的.........
▪php 无限极分类
代码如下:<?php /*======================================================== 类名:catalog 功能:无限分级类 方法: 树形显示分类 catalog_show($id) //参数$id 递归调用 流程:找到父分类为0所有根分类-> 一直递.........
▪mysql时区问题
用convert_tz转换时区,你可以用 show variables like 'time_zone'; 得到时区,如果返回的是"system"的话,你可以用 show variables like 'system_time_zone'; .........
[1]某大型网络公司应聘时的笔试题目附答案
来源: 互联网 发布时间: 2013-11-30
1、有一个论坛,帖子的数据巨大,请简要说明如何提高用户搜索帖子的效率。
在程序方面,可以使用页面缓存技术。在前台界面着设计方面也可以让用户输入多一些的关键字,比如帖子的标题,发贴人的id,时间等,这样就可以大大提高搜索的效率了。
缓存下就行了,模板缓存和局部缓存都可以
2、在blog中用户注册后自动绑定一个:用户名.mmosite.com这样的二级域名,请简要的说出解决方案。
可以用两个IIS站点,一个是主站,一个是域名跳转
用于跳转的站点在IIS里必须添加一个空的主机头(默认站点)
还需要以下几点:
1.泛域名解析,将*.yourdomain.com解析到你的Web服务器所在IP地址
2.在域名跳转站点的缺省页编辑程序,获得*.yourdomain.com中的*的值,跳转到主站
$_SERVER['HTT_HOST']; 根据这个查询下数据库就行了
3、请用PHP脚本解析出在
http://srfi.schemers.org/srfi-28/mail-archive/maillist.html
这个页面中出现的所有email,并保存到数组。
preg_match_all \w+@([\w\.]+) 就行了
4、用JavaScript 脚本写出下面的功能。有一个页面有两条图片广告,当用户访问这个页面时按百分之一的概率随机点击两个广告中的一个广告。
parseInt(Math.random()*100)==1
5、有一篇文章内容包含中文和英文字符,现在需要将文章中的英文单词全部提取出来。比如下面的文字:
RF Online has been officially rele按钮功ased for
提取结果应该是:
RF
Online
has
been
officially
rele
ased
for
请用C语言写出这个函数。
preg_match_all \w+
C语言也简单,assoc范围判断下就行
6、请使用linux下的shell(Bourne Again Shell)脚本写出下面要求的功能:
现在有一个目录/video/temp/用来存放用户上传的视频文件,这个目录是临时的现在我们需要定时把这个目录里文件转移到/video/年月日/下面来,请写出脚本
#!/usr/bin/php -n
foreach(glob("/video/temp/") as $file){
copy...
}
在程序方面,可以使用页面缓存技术。在前台界面着设计方面也可以让用户输入多一些的关键字,比如帖子的标题,发贴人的id,时间等,这样就可以大大提高搜索的效率了。
缓存下就行了,模板缓存和局部缓存都可以
2、在blog中用户注册后自动绑定一个:用户名.mmosite.com这样的二级域名,请简要的说出解决方案。
可以用两个IIS站点,一个是主站,一个是域名跳转
用于跳转的站点在IIS里必须添加一个空的主机头(默认站点)
还需要以下几点:
1.泛域名解析,将*.yourdomain.com解析到你的Web服务器所在IP地址
2.在域名跳转站点的缺省页编辑程序,获得*.yourdomain.com中的*的值,跳转到主站
$_SERVER['HTT_HOST']; 根据这个查询下数据库就行了
3、请用PHP脚本解析出在
http://srfi.schemers.org/srfi-28/mail-archive/maillist.html
这个页面中出现的所有email,并保存到数组。
preg_match_all \w+@([\w\.]+) 就行了
4、用JavaScript 脚本写出下面的功能。有一个页面有两条图片广告,当用户访问这个页面时按百分之一的概率随机点击两个广告中的一个广告。
parseInt(Math.random()*100)==1
5、有一篇文章内容包含中文和英文字符,现在需要将文章中的英文单词全部提取出来。比如下面的文字:
RF Online has been officially rele按钮功ased for
提取结果应该是:
RF
Online
has
been
officially
rele
ased
for
请用C语言写出这个函数。
preg_match_all \w+
C语言也简单,assoc范围判断下就行
6、请使用linux下的shell(Bourne Again Shell)脚本写出下面要求的功能:
现在有一个目录/video/temp/用来存放用户上传的视频文件,这个目录是临时的现在我们需要定时把这个目录里文件转移到/video/年月日/下面来,请写出脚本
#!/usr/bin/php -n
foreach(glob("/video/temp/") as $file){
copy...
}
[2]php 无限极分类
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
/*========================================================
类名:catalog
功能:无限分级类
方法:
树形显示分类
catalog_show($id) //参数$id 递归调用
流程:找到父分类为0所有根分类-> 一直递归取得所有分类并显示
添加分类
catalog_add($uid,$name) //$uid 父id //$name 分类名
流程:依据$uid,在此id下添加一个新子id
删除分类
catalog_del($uid)//参数 $uid 数要删除的分类
修改分类
catalog_set($id,$name) //参数 $id 要修改的分类 //参数 $name 新的分类名
变量:
$config //数据库信息-> host,user,pass,dbname
$catalog_dbname //分类数据库名
数据库:
catalog_id //分类的自然序号
catalog_uid //分类的父分类
catalog_name //分类名
catalog_path_number //亲缘树数字形式 0:1:2
catalog_path_char //亲缘树字符形式 分类1:分类1.1:分类1.1.1
参照文章 http://www.phpchina.com/12823/viewspace_4468.html
========================================================*/
class catalog{
var $config;
var $catalog_dbname;
var $links;
private function connect(){
$this->links = mysql_connect($this->config['host'],$this->config['user'],$this->config['pass']) or die("错误: 第".__LINE__."行<br>".mysql_error());
mysql_select_db($this->config['dbname'],$this->links);
mysql_query("SET NAMES gb2312");
}
function catalog_show($uid = 0){
$this->connect();
$sql = "Select * FROM ".$this->catalog_dbname. "
Where catalog_uid = ". $uid ."
orDER BY catalog_id ";
$result = mysql_query($sql,$this->links) or die("错误: 第".__LINE__."行<br>".mysql_error());
if(mysql_num_rows($result) > 0){
while ($row = mysql_fetch_assoc($result)){
if($this->sun_catalog($row['catalog_id'])){//判断有没有子分类
$cata_img = "<img id = 'img".$row['catalog_id']."' src='/blog_article/img/last_node.jpg' ōnclick='click_catalog(".$row['catalog_id'].")'/>";
}else{
$cata_img = "<img src='/blog_article/img/sp.jpg'/>";
}
$path = explode(":",$row['catalog_path_number']);
if(count($path) > 1){
for($i=1;$i<count($path);$i++){
$path_img .= "<img src='/blog_article/img/sp.jpg'/>";
}
}
echo $path_img.$cata_img;
echo "<a href = 'javascrīpt:send_id(".$row['catalog_id'].")'>";
echo $row['catalog_name']."</a><br>";
$path_img = "";
if($this->sun_catalog($row['catalog_id'])){
$hidden_div = "";
echo "<div id = 'div".$row['catalog_id']."' ".$hidden_div.">";
$this->catalog_show($row['catalog_id']);
echo "</div>";
}
}
}
}
private function sun_catalog($uid){//判断是否有子分类
$sql = "Select * FROM ".$this->catalog_dbname. "
Where catalog_uid = ". $uid ."
orDER BY catalog_id ";
$result = mysql_query($sql,$this->links) or die("错误: 第".__LINE__."行<br>".mysql_error());
if(mysql_num_rows($result) > 0){
return true;
}else{
return false;
}
}
function catalog_add($uid,$name){
//获取父id的亲缘树
$this->connect();
$sql = "Select * FROM ".$this->catalog_dbname."
Where catalog_id = '".$uid."'";
$result = mysql_query($sql,$this->links)
or die("错误: 第".__LINE__."行<br>".mysql_error());
$row = mysql_fetch_assoc($result);
$fid_path_number = $row['catalog_path_number'];//id的数字亲缘树
$fid_path_char = $row['catalog_path_char'];//id的字符亲缘树
//插入数据 先插入行->再找到最新插入的id, 在依据这个id进行修改
$sql = "Insert INTO ".$this->catalog_dbname."(catalog_uid,catalog_name)
VALUES(".$uid.",'".$name."')";
$result = mysql_query($sql,$this->links)
or die("错误: 第".__LINE__."行<br>".mysql_error());
$catalog_id = mysql_insert_id();//获取自己的id
$catalog_path_number = $fid_path_number.":".$catalog_id;//得到自己的数字亲缘数
$catalog_path_char = $fid_path_char.":".$name;//得到自己的字符亲缘数
$sql = "Update '".$this->catalog_dbname."'
SET
catalog_path_number = '".$catalog_path_number."',
catalog_path_char = '".$catalog_path_char."'
Where
catalog_id = ".$catalog_id;
mysql_query($sql,$this->links)
or die("错误: 第".__LINE__."行<br>".mysql_error());
}
function catalog_del($id){
$this->connect();
$sql = "Delete FROM ".$this->catalog_dbname."
Where catalog_id = ".$id;
mysql_query($sql,$this->links)
or die("错误: 第".__LINE__."行<br>".mysql_error());
}
function catalog_set($id,$name){
$this->connect();
$sql = "Update ".$this->catalog_dbname."
SET
catalog_name = '".$name."'
Where
catalog_id = ".$id;
mysql_query($sql,$this->links)
or die("错误: 第".__LINE__."行<br>".mysql_error());
}
}
?>
[3]mysql时区问题
来源: 互联网 发布时间: 2013-11-30
用convert_tz转换时区,你可以用
show variables like 'time_zone';
得到时区,如果返回的是"system"的话,你可以用
show variables like 'system_time_zone';
得到结果。
show variables like 'time_zone';
得到时区,如果返回的是"system"的话,你可以用
show variables like 'system_time_zone';
得到结果。
最新技术文章: