heiyeluren的blog(黑夜路人的开源世界)

【为在5.12地震中丧生的同胞哀悼,为灾区人民祈福!】

谢华亮ID:heiyeshuwu
[修改头像]
756066次访问,排名37好友16人,关注者35
既然决定远行,便只顾风雨兼程。
heiyeshuwu的文章
原创 271 篇
翻译 3 篇
转载 194 篇
评论 426 篇
heiyeluren的公告

联系方式:


访问统计: free hit counter code
FeedSky订阅:
FeedSky订阅
最近评论
出会い系サイト:出会い出会い系サイト出会い喫茶出会い掲示板ナンパ出会いカ……
出会い系サイト:出会い出会い系サイト出会い喫茶出会い掲示板ナンパ出会いカ……
出会い系サイト:出会い出会い系サイト出会い喫茶出会い掲示板ナンパ出会いカ……
phpclep:太棒了, 非常詳細. 感謝!
1005491876:wei shen me dian nao zhuo mian kan bu dao ren he tu biao ne?lian shu ru fa dou bu neng yong ,ying gai zen me chu li ne ?
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes
文章分类
收藏
    相册
    技术图片
    搜索引擎
    ::eYou::
    kevin world
    lewis - 老吕
    qyb - BT的花
    Realzay的blog
    叶金荣
    天堂地狱鬼-dulao5's Blog
    沙漠之周
    狐狸糊涂
    老韩
    與子觀化
    ::Yahoo::
    glemir’s blog
    Rainx
    stauren
    互联网,请记住我 - 162同学的技术博客
    小蚂蚁同学滴测试博客
    张彪同学
    随网之舞 - kaven的DHTML博客
    ::朋友::
    【推荐】中文分类网
    kevin world
    miky
    俺兄弟的blog
    晋陵路人的Blog
    李天华同学滴技术博客
    沙狐部落
    ::网友::
    Code & Stock.
    LionD8的Blog
    Phzzy
    张贺同学的博客
    技术大牛老余的博客
    抚琴居
    邢红瑞的blog
    阿健的博客
    :PHP博客:
    .: Easy style :.
    [琴剑楼]
    CoolCode.cn
    Haohappy的Blog
    Hightman
    iwind的blog
    Javascript开发站
    JD Space
    Nio's Weblog
    Open Source PHP
    PHP面对对象
    SourceForge.net
    trip的专栏
    UGIA.cn
    windix's blog
    Windix's Weblog
    一个藏袍
    俊麟 Michael`s blog
    偶然的blog
    刘敏的blog
    大龄青年的Blog
    廖宇雷的blog
    懒猫开始新生活blog
    某人的栖息地
    王春生的博客
    神仙
    :牛人blog:
    DBA notes
    侯捷网站
    孟岩
    搜索引擎研究
    方舟
    王咏刚的BLOG
    竹笋炒肉
    荣耀
    车东[Blog^2]
    透明思考
    陈硕的Blog
    DHTML
    DHTMLGoodies
    FCKEditor
    Google Code
    Google Web Toolkit
    HTML Goodies
    HTML.it
    HTMLAre
    HTMLdog
    JavaScript Kit
    jQuery
    KindEditor
    Prototype
    TinyMCE
    W3 Schools
    Yahoo JavaScript Developer Center
    Yahoo! Developer Network
    Yahoo! UI Library (YUI)
    网页设计师Web标准
    Java国内站
    ChinaJavaWorld.com技术论坛
    IBM developerWorks 中国: Java
    Java中文站
    Java开源大全
    Java爱好者
    JR - Java翻译站
    J道-JDON
    Matrix: 与Java共舞
    中国Java开发网
    中文java技术网
    PHP国内站点
    CSDN PHP论坛
    Discuz!
    FleaPHP
    Google--PHP用户组
    IBM DeveloperWorks
    JavsScript技术讨论
    Nirvana Studio
    OpenPHP.cn
    PHPChina
    TiM Club
    中文 PFC 1.0 手册--PHP5的开发包
    中文 PFC 1.0 手册--PHP5的开发包
    中文PHP网
    太平洋--PHP开发区
    爱MySQL
    超越PHP
    PHP国外站点
    ADOdb
    Agavi Framework
    Cake PHP
    MySQL Performance Blog
    MySQL Performance Blog
    Nonaweb
    PEAR
    PECL
    PECL Windows
    PHP Builder
    PHP Classes
    PHP Classes
    PHP New Download
    PHP Security Consortium
    php.MVC
    php.MVC
    PHPkitchen(OO & MVC)
    phpPatterns
    PHP国外图书下载
    smart template
    Smarty
    SourceForge.net
    Symfony Framework
    Zend
    Zend Framework
    Unix C/C++
    Free Gentux
    周立发的blog(Linux C)
    Unix/Linux
    BSD智库
    ChinaUnix
    FreeBSDChina
    FreeLAMP
    IBM开发者Linux专区
    Linux Byte
    LinuxKit
    LinuxTS
    Linux伊甸园
    Linux技术中坚站
    Linux非常空间
    Love Unix
    NetBSD&OpenBSD中文用户组
    NetBSD中国社区
    Oracle中国用户讨论组
    OurLinux
    Unix中文
    Unix中文
    Unix中文宝库
    中国Linux公社
    中国Unix用户技术论坛
    中文FreeBSD用户组
    永远的Unix
    炎黄角马
    程序设计
    CSDN
    IBM开发者中心
    Microsoft TechNet: 主页
    MSDN 中文网站
    PHP中文站
    Sun技术社区
    中国IT认证实验室--企业应用技术
    中国协议分析网
    喜悦国际村
    太平洋电脑网---开发特区
    实用网站
    veBook(国外大量免费图书下载网站)
    Whois.net
    中国Web信息博物馆
    中国互联网络信息中心whois查询
    服务器系统信息查看
    网络安全
    AnySide.com
    CGI Secutiry
    K-OTik Security Monitoring
    Linux Security
    Packet Storm Security
    PHP Secure
    RFC中文文档索引
    Safemode.org
    SecuriTeam.com
    Security Corporation
    SecurityFocus
    SecurityTracker
    Zone-h (区域黑客,每天公布各国被黑的网站)
    中华安全网
    中国信息安全组织
    国家计算机网络应急处理中心
    安全天使
    安全焦点
    幻影旅团
    绿盟科技
    网络安全评估中心(cnns )
    在线手册
    Apache2.0中文文档
    Beyond Linux From Scratch
    Debian参考手册
    FreeBSD Porter 手册
    FreeBSD使用手册
    Linux C函数中文参考手册
    MySQL 4.1.0 中文参考手册
    NetBSD在线手册
    OpenBSD在线FAQ
    PHP ADODB 1.99版手册中文翻译(Tripc)
    PHP中文手册(国内)
    PHP中文手册(国外)
    PostgreSQL中文文档
    Red Hat Linux 9入门指南
    Red Hat Linux 9安装指南
    Red Hat Linux 9定制手册
    中国OSS技术手册中心
    技术文档手册中心-ChinaUnix
    存档

    原创 [原创]我自己想的几道入门PHP笔试题

    新一篇: [转]JavaScript基本属性方法参考

     

    我自己想的几道入门PHP笔试题,没有什么意义,只是自己随便想想,算是好玩。


    一、基础题

    1. 写出如下程序的输出结果
    <?
    $str1 = null;
    $str2 = false;
    echo $str1==$str2 ? '相等' : '不相等';

    $str3 = '';
    $str4 = 0;
    echo $str3==$str4 ? '相等' : '不相等';

    $str5 = 0;
    $str6 = '0';
    echo $str5===$str6 ? '相等' : '不相等';
    ?>


    2. 写出如下程序的输出结果
    <?
    $a1 = null;
    $a2 = false;
    $a3 = 0;
    $a4 = '';
    $a5 = '0';
    $a6 = 'null';
    $a7 = array();
    $a8 = array(array());

    echo empty($a1) ? 'true' : 'false';
    echo empty($a2) ? 'true' : 'false';
    echo empty($a3) ? 'true' : 'false';
    echo empty($a4) ? 'true' : 'false';
    echo empty($a5) ? 'true' : 'false';
    echo empty($a6) ? 'true' : 'false';
    echo empty($a7) ? 'true' : 'false';
    echo empty($a8) ? 'true' : 'false';
    ?>

    3. 写出如下程序的输出结果
    <?
    $test = 'aaaaaa';
    $abc = & $test;
    unset($test);

    echo $abc;
    ?>

    4. 写出如下程序的输出结果
    <?$count = 5;
    function get_count(){
     static $count = 0;
     return $count++;
    }

    echo $count;
    ++$count;
    echo get_count();
    echo get_count();
    ?>

    5. 写出如下程序的输出结果
    <?
    $GLOBALS['var1'] = 5;
    $var2 = 1;
    function get_value(){
     global $var2;
     $var1 = 0;
     return $var2++;
    }
    get_value();

    echo $var1;
    echo $var2;
    ?>

    6. 写出如下程序的输出结果
    <?
    function get_arr($arr){
     unset($arr[0]);
    }
    $arr1 = array(1, 2);
    $arr2 = array(1, 2);

    get_arr(&$arr1);
    get_arr($arr2);

    echo count($arr1);
    echo count($arr2);
    ?>


    7. 使用五种以上方式获取一个文件的扩展名

    要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,
    必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如 get_ext1($file_name), get_ext2($file_name)

     

    二、算法题


    1. 使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组

    2. 使用PHP描述顺序查找和二分查找(也叫做折半查找)算法,顺序查找必须考虑效率,对象可以是一个有序数组

    3. 写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数

     


    【附答案】(以下答案不一定是最好的,只是一个简单的参考)

    一、基础题

    1. 相等 相等 不相等
    2. true true true true true false true false
    3. aaaaaa
    4. 5 0 1
    5. 5 2
    6. 1 2
    7. 使用五种以上方式获取一个文件的扩展名

    function get_ext1($file_name){
     return strrchr($file_name, '.');
    }
    function get_ext2($file_name){
     return substr($file_name, strrpos($file_name, '.'));
    }
    function get_ext3($file_name){
     return array_pop(explode('.', $file_name));
    }
    function get_ext4($file_name){
     $p = pathinfo($file_name);
     return $p['extension'];
    }
    function get_ext5($file_name){
     return strrev(substr(strrev($file_name), 0, strpos(strrev($file_name), '.')));
    }

     

    二、算法题

    1. 使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组

    //冒泡排序(数组排序)
    function bubble_sort($array)
    {
            $count = count($array);
            if ($count <= 0) return false;

            for($i=0; $i<$count; $i++){
                    for($j=$count-1; $j>$i; $j--){
                            if ($array[$j] < $array[$j-1]){
                                    $tmp = $array[$j];
                                    $array[$j] = $array[$j-1];
                                    $array[$j-1] = $tmp;
                            }
                    }
            }
            return $array;
    }

    //快速排序(数组排序)
    function quick_sort($array) {
            if (count($array) <= 1) return $array;

            $key = $array[0];
            $left_arr = array();
            $right_arr = array();

            for ($i=1; $i<count($array); $i++){
                    if ($array[$i] <= $key)
                            $left_arr[] = $array[$i];
                    else
                            $right_arr[] = $array[$i];
            }

            $left_arr = quick_sort($left_arr);
            $right_arr = quick_sort($right_arr);

            return array_merge($left_arr, array($key), $right_arr);
    }


    2. 使用PHP描述顺序查找和二分查找(也叫做折半查找)算法,顺序查找必须考虑效率,对象可以是一个有序数组

    //二分查找(数组里查找某个元素)
    function bin_sch($array, $low, $high, $k){ 
        if ($low <= $high){ 
            $mid = intval(($low+$high)/2); 
            if ($array[$mid] == $k){ 
                return $mid; 
            }elseif ($k < $array[$mid]){ 
                return bin_sch($array, $low, $mid-1, $k); 
            }else{ 
                return bin_sch($array, $mid+1, $high, $k); 
            } 
        } 
        return -1; 

    //顺序查找(数组里查找某个元素)
    function seq_sch($array, $n, $k){ 
        $array[$n] = $k; 
        for($i=0; $i<$n; $i++){ 
            if($array[$i]==$k){ 
                break; 
            } 
        } 
        if ($i<$n){ 
            return $i; 
        }else{ 
            return -1; 
        } 


    3. 写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数

    //二维数组排序, $arr是数据,$keys是排序的健值,$order是排序规则,1是升序,0是降序
    function array_sort($arr, $keys, $order=0) {
     if (!is_array($arr)) {
      return false;
     }
     $keysvalue = array();
     foreach($arr as $key => $val) {
      $keysvalue[$key] = $val[$keys];
     }
     if($order == 0){
      asort($keysvalue);
     }else {
      arsort($keysvalue);
     }
     reset($keysvalue);
     foreach($keysvalue as $key => $vals) {
      $keysort[$key] = $key;
     }
     $new_array = array();
     foreach($keysort as $key => $val) {
      $new_array[$key] = $arr[$val];
     }
     return $new_array;
    }
     

    发表于 @ 2006年12月26日 23:41:00|评论(loading...)|编辑

    旧一篇: [原创]实现基于Memcache存储的Session类

    评论

    #Iptton 发表于2007-03-24 15:52:28  IP: 202.116.130.*
    见过类似的 Javascript “笔试代码”

    感觉这类代码是在钻牛角尖...
    真正做得项目的未必能把一种语言每个角落都弄得清清楚楚
    很多时候以上题目的内容只要在需要用到时试试就知道了
    用过后就记住了

    用来做笔试题刁难人,何苦呢...
    #hobbs136 发表于2007-03-31 10:40:20  IP: 125.34.42.*
    我也觉得有点变态
    #hongfu1 发表于2007-04-01 16:01:40  IP: 58.82.227.*
    基础,很有必要,这都不理解别的就别说了。。。。。
    #ryl 发表于2007-04-02 13:53:40  IP: 59.57.178.*
    我觉得没什么意义
    #ian_0126 发表于2007-04-12 13:54:33  IP: 218.69.28.*
    答案呢,我想对一下
    #hehe 发表于2007-11-25 21:09:35  IP: 218.2.216.*
    晕 ,今天51.com的笔试题!!!哎
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © heiyeluren