1. mysql_num_fields() 返回结果集中字段的数目
如: $result = mysql_query("SELECT id,name,age FROM mydb、tb1 where id < 5");
        echo mysql_num_fields($result);      //result:3  (id,name,age)三个字段
2. $a = 9;
   $b = &%a;
   unset($b);
   $b = 1;
   echo $a; //$a = 9//解释如下,这属于传递赋值变量相当于一个容器,变量名则引用着容器中的变量。unset()函数是切断变量名对容器的引用连接,并不是清空容器中变量的值。ps:只要容器中的变量还被某个变量名引用,那么该变量就不会被垃圾回收。

3.
$str = "LAMP";
$str1 = "LAMPBrother";
$strc = strcmp($str,$str1);
switch ($strc){
    case 1:
        echo "str > str1";
        break;
    case –1:
        echo "str < str1";
        break;
    case 0:
        echo "str=str1";
        break;
    default:
        echo "str <> str1";
}
//strcmp()函数比较两个字符串大小.  $str1 == $str2时,返回0;  $str1 < $str2时,返回负数;(1 * 多出来的字符数量)  $str1 > $str2时,返回正数;(-1 * 多出来的字符数量)LAMP 比 LAMPBrother 少了 7 个字符,所以$str < $str1则strcmp()的返回值为 -1*7 = -7则echo 为 str <> str1。
4.
<?php
       if ($a<10){
              if($b>11){
                     if($c==10&& $d != $c) {
                            $x=0;
                     }else {
                            $x=1;
                     }
              }
       }
?>
A. $x = ($a < 10 || $b > 11 || $c == 10 && $d !=$c ) ? 0 : 1;
B. $x = (($a < 10 && $b > 11) || ($c == 10&& $d !=$c ) ) ? 0 : 1;
C. $x = ($a < 10 && $b > 11 && $c == 10 && $d !=$c ) ? 0 : 1;
D. 以上都不是

答案:D
//在以上的if判断语句中,若 $a>10,则直接跳出循环,$x 不会存在有值的情况
//而三元运算符则会使得 $x 存在值
5.
<?php
class A{
    public function __construct(){
        echo "Class A...<br/>";
    }
}
class B extends A{
    public function __construct(){
        echo "Class B...<br/>";
    }
}
    new B();
?>
输出结果: Class B...
//子类继承了父类,子类的构造方法会覆盖父类的构造方法。
6.
Final关键字
如果父类中的方法被声明为final,则子类无法覆盖该方法;
如果一个类被声明为final,则不能被继承;
Note:属性不能被定义为 final,只有类和方法才能被定义为 final。
7.
<?php
    class A{
        public static $num=0;
        public function __construct(){
            self::$num++; }
    }
    new A();
    new A();
    new A();
    echo A::$num;
?>

输出结果:3
//static修饰的静态变量会常驻内存
8.php抽象类
PHP中抽象类使用abstract关键字定义.
没有方法体的方法叫抽象方法,包含抽象方法的类必须是抽象类。
抽象类不能实例化,也就是不可以new成对象。
抽象类可以是个空类,也就是不一定需要有抽象方法。但抽象方法只能存在抽象类中。
9.
__call()函数是php类的默认魔法函数,__call() 在一个对象的上下文中,如果调用的方法不存在的时候,它将被触发:
  __call()该方法在调用的方法不存在时会自动调用,程序仍会继续执行下去。
  __call() 方法用于监视错误的方法调用
<?php
class MethodTest {
     public function __call($name, $arguments) {
        // Note: value of $name is case sensitive.
        echo "Calling object method '$name' "
             . implode($arguments). "\n";
     }
}
$obj = new MethodTest;
$obj->runTest('in object context');

运行结果:
Calling object method 'runTest' in object context
10.
如果在PHP中使用Oracle数据库作为数据库服务器,应该在PDO中加载下面哪个驱动程序?
A. PDO_DBLIB  [无]
B. PDO_MYSQL  [MySQL Functions (PDO_MYSQL) ]
C. PDO_OCI      [Oracle Functions (PDO_OCI) ]
D. PDO_ODBC   [unixODBC and ibm-DB2 Functions (PDO_ODBC) ]
11.
PDO一共提供了3种不同的错误处理模式
PDO::ERRMODE_SILENT; //不报错误
PDO::ERRMODE_WARNING;//以警告的方式报错
PDO::ERRMODE_EXCEPTION;//以异常的方式报错
12.
PDO通过执行SQL查询与数据库进行交互,可以分为多种不同的策略,使用哪一种方法取决于你要做什么操作。如果向数据库发送DML语句,下面哪种方式最合适?
使用PDO对象中的exec()方法
使用PDO对象中的query()方法
使用PDO对象中的prepare()和PDOStatement对象中的execute()两个方法结合

答案:以上方式都可以

//有用户输入数据的时候更偏向于用C,防止sql注入
//PDO->exec() 方法主要是针对没有结果集合返回的操作,比如 INSERT、UPDATE、  DELETE 等操作,它返回的结果是当前操作影响的列数,这里select用query比较合适。
//DML(data manipulation language):
  它们是SELECT、UPDATE、INSERT、DELETE,就象它的名字一样,这4条命令是用  来对数据库里的数据进行操作的语言
//DDL(data definition language):
  DDL比DML要多,主要的命令有CREATE、ALTER、DROP等,DDL主要是用在定义  或改变表(TABLE)的结构,数据类型,表之间的链接和约束等初始化工作上,他们大多在建立表时使用
//DCL(Data Control Language):
  是数据库控制功能。是用来设置或更改数据库用户或角色权限的语句,包括  (grant,deny,revoke等)语句。在默认状态下,只有  sysadmin,dbcreator,db_owner或db_securityadmin等人员才有权力执行DCL 
13.MySQL目前只有InnoDB和BDB两个数据表类型才支持事务
MySQL是以自动提交(autocommit)模式运行的,必须执行mysqli对象中的autocommit(0)方法关闭MySQL事务机制的自动提交模式
调用mysqli类对象的commit()方法提交事务
rollback是回滚事务,mysqli类对象的rollback_back()方法,只是撤销从上一次提交commit()后对数据库的DML操作。并不会开启自动提交模式

php的几个面试题的更多相关文章

  1. .NET面试题系列[8] - 泛型

    “可变性是以一种类型安全的方式,将一个对象作为另一个对象来使用.“ - Jon Skeet .NET面试题系列目录 .NET面试题系列[1] - .NET框架基础知识(1) .NET面试题系列[2] ...

  2. 关于面试题 Array.indexof() 方法的实现及思考

    这是我在面试大公司时碰到的一个笔试题,当时自己云里雾里的胡写了一番,回头也曾思考过,最终没实现也就不了了之了. 昨天看到有网友说面试中也碰到过这个问题,我就重新思考了这个问题的实现方法. 对于想进大公 ...

  3. 对Thoughtworks的有趣笔试题实践

    记得2014年在网上看到Thoughtworks的一道笔试题,当时觉得挺有意思,但是没动手去写.这几天又在网上看到了,于是我抽了一点时间写了下,我把程序运行的结果跟网上的答案对了一下,应该是对的,但是 ...

  4. 从阿里巴巴笔试题看Java加载顺序

    一.阿里巴巴笔试题: public class T implements Cloneable { public static int k = 0; public static T t1 = new T ...

  5. JAVA面试题

    在这里我将收录我面试过程中遇到的一些好玩的面试题目 第一个面试题:ABC问题,有三个线程,工作的内容分别是打印出"A""B""C",需要做的 ...

  6. C++常考面试题汇总

    c++面试题 一 用简洁的语言描述 c++ 在 c 语言的基础上开发的一种面向对象编程的语言: 应用广泛: 支持多种编程范式,面向对象编程,泛型编程,和过程化编程:广泛应用于系统开发,引擎开发:支持类 ...

  7. .NET面试题系列[4] - C# 基础知识(2)

    2 类型转换 面试出现频率:主要考察装箱和拆箱.对于有笔试题的场合也可能会考一些基本的类型转换是否合法. 重要程度:10/10 CLR最重要的特性之一就是类型安全性.在运行时,CLR总是知道一个对象是 ...

  8. 我们公司的ASP.NET 笔试题,你觉得难度如何

    本套试题共8个题,主要考察C#面向对象基础,SQL和ASP.NET MVC基础知识. 第1-3题会使用到一个枚举类,其定义如下: public enum QuestionType { Text = , ...

  9. 我设计的ASP.NET笔试题,你会多少呢

    本笔试题考查范围包括面向对象基础.HTML.CSS.JS.EF.jQuery.SQL.编码思想.算法等范围. 第1题:接口和抽象类有何区别? 第2题:静态方法和实例方法有何区别? 第3题:什么是多态? ...

  10. 猫哥网络编程系列:详解 BAT 面试题

    从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...

随机推荐

  1. [转帖]go 的goroutine 以及 channel 的简介.

    进程,线程的概念在操作系统的书上已经有详细的介绍.进程是内存资源管理和cpu调度的执行单元.为了有效利用多核处理器的优势,将进程进一步细分,允许一个进程里存在多个线程,这多个线程还是共享同一片内存空间 ...

  2. 深度学习:卷积神经网络(convolution neural network)

    (一)卷积神经网络 卷积神经网络最早是由Lecun在1998年提出的. 卷积神经网络通畅使用的三个基本概念为: 1.局部视觉域: 2.权值共享: 3.池化操作. 在卷积神经网络中,局部接受域表明输入图 ...

  3. Mac 安装nodejs

    原文链接:http://blog.csdn.net/u010053344/article/details/50545304 Mac 安装nodejs 这几日因为需求需要又临时用到nodejs,之前安装 ...

  4. JavaScript本地存储实践(html5的localStorage和ie的userData)

    http://www.css88.com/archives/3717 JavaScript本地存储实践(html5的localStorage和ie的userData) 发表于 2011年06月11日  ...

  5. Qt——线程类QThread

    本文主要介绍Qt中线程类QThread的用法,参考(翻译+修改)了一篇文章:PyQt: Threading Basics Tutorial,虽然使用的是PyQt,但与C++中Qt的用法大同小异,不必太 ...

  6. BZOJ5101 POI2018Powódź(并查集)

    如果某个格子的积水量超过了该格子的某个挡板高度,那么挡板另一端的积水量就会与其相同.看起来是一个不断合并的过程,考虑并查集.枚举深度,维护每个连通块内的方案数,深度超过某挡板高度时,将两端的连通块合并 ...

  7. A New Function LightOJ - 1098()

    题意 求 1 - n的的所有数的因子(不包括自身和1)和 对于一个数 i  ,以i为因子的数的个数为 n/i  因为不能包括自身 所以 减一 即  n/i-1  这样遍历每一个数 累加即可 但复杂度较 ...

  8. ZJOI2015地震后的幻想乡

    题面链接 洛咕 sol %%%_rqy 本来想写正常的状压,看到这篇题解就入坑了... 直接搬题解吧,写的太好了不用解释. 慢慢搬,先咕着QAQ #include<cstdio> #inc ...

  9. 【洛谷P4706】取石子

    Description ​ 现在 Yopilla 和 yww 要开始玩游戏! ​ 他们在一条直线上标记了 \(n\) 个点,从左往右依次标号为 \(1, 2, ..., n\) .然后在每个点上放置一 ...

  10. 洛谷 P5105 不强制在线的动态快速排序

    P5105 不强制在线的动态快速排序 题目背景 曦月最近学会了快速排序,但是她很快地想到了,如果要动态地排序,那要怎么办呢? 题目描述 为了研究这个问题,曦月提出了一个十分简单的问题 曦月希望维护一个 ...