// 请写出 javascript 通过 AJAX 不刷新页面提交FORM的方法 (可用任何成熟的JS框架)
JQ
$.ajax({
type : "GET",
cache : false,
async : false,
url : "http://www.google.com/index.php?",
dataType : "JSON",
data : "id =1",
beforeSend : function () {
// code ...
},
success : function(i){
// code ...
}
});
// 请写一个函数 验证电子邮件的格式是6否正确
$partten = '/^[a-zA-Z0-9_+.-]+\@([a-zA-Z0-9]+\.)+[a-zA-Z0-9]{2,4}$/';
$match = preg_match($partten, $content);
// include 和 include_once, include 和 require 之间的区别
多次 一次
警告 致命性错误
// 请用多冲方法实现 name@domain.com 这样的电子邮件地址的前缀和域名提取出来(3种方法以上)
$email = 'name@domain.com';
// 属组分割
function email_domain1($email)
{
list($email_prefix, $domain) = explode('@', $email);
return array(
'email_prefix' => $email_prefix,
'domain' => $domain,
);
}
// 字符串查找
function email_domain2($email)
{
$key = strpos($email, '@');
$email_prefix2 = substr($email, 0, $key);
$domain2 = substr($email, $key+1);
return array(
'email_prefix' => $email_prefix2,
'domain' => $domain2,
);
}
// 判断
function email_domain3()
{
$email_prefix3 = $domain3 = $key = '';
for ($i=0; $i <strlen($email) ; $i++) {
if ($email{$i} == '@') $key = 1;
if ($key == 1) {
$domain3 .= $email{$i};
} else {
$email_prefix3 .= $email{$i};
}
}
return array(
'email_prefix' => $email_prefix3,
'domain' => $domain3,
);
}
// 请描述 private, protected, public 的区别
private 私有
protected 私有 子类
public 公共
// 表 T(Sid, Sco, Score)表示学生学号, 课程名称, 分数 , 请写 SQL 查询每门课程的平均分 并降序排序, 如果平均分相等按学号升序排序
// 这道题存在问题题意不明确 1、课程平均分 2、每个学生课程平均分 按照后面分析 应该是第二种
// columns
// datas
// 1
// 2
// 写一个函数 来对二维数组排序
// 题意不明 就先速排吧
function array_sort($array)
{
$count = count($array);
if ($count <= 1) return $array;
$key = $array[0];
$left_arr = $right_arr = array();
for ($i=1; $i < $count; $i++) {
if ($array[$i] <= $key) {
$left_arr[] = $array[$i];
} else {
$right_arr[] = $array[$i];
}
}
$left_arr[] = array_sort($left_arr);
$right_arr[] = array_sort($right_arr);
return array_merge($left_arr, array($key), $right_arr);
}
// 使用对象可以像属组一样进行 foreach 循环, 要求属性必须私有。 (Iterator 模式的 PHP5 实现写一类实现 Iterator 接口)
class myIterator implements Iterator {
private $position = 0;
private $array = array(
"firstelement",
"secondelement",
"lastelement",
);
public function __construct() {
$this->position = 0;
}
function rewind() {
var_dump(__METHOD__);
$this->position = 0;
}
function current() {
var_dump(__METHOD__);
return $this->array[$this->position];
}
function key() {
var_dump(__METHOD__);
return $this->position;
}
function next() {
var_dump(__METHOD__);
++$this->position;
}
function valid() {
var_dump(__METHOD__);
return isset($this->array[$this->position]);
}
}
$it = new myIterator;
foreach($it as $key => $value) {
var_dump($key, $value);
echo "/n";
}
// MySQL 数据库, 一天 一万 条以上的增量, 怎么来优化
1、按照需求分关系表
2、分表
3、索引
// 什么是 MVC, 为什么要用 MVC, 你在做过的项目里面 怎么用 MVC?
。M 模型 V 视图 C 控制器
。动静分割 提高开发效率, 代码可读性高
。模型 封装数据库操作等业务逻辑, 提供公共API,视图处理模板, C 入口 业务逻辑
// 使用过 Memcache 缓存吗? 如果使用过 能够简述一下他的工作原理吗
。我个人理解, 使用mencache 就像属组一样 有个key 存 就是 指定key存入指定值 读就是读key值