PHP 基础部分测试(一)

461 查看

isset函数和empty函数的区别?

isset()函数 一般用来检测变量是否设置 

若变量不存在则返回 FALSE
若变量存在且其值为NULL,也返回 FALSE
若变量存在且值不为NULL,则返回 TURE
同时检查多个变量时,每个单项都符合上一条要求时才返回 TRUE,否则结果为 FALSE 
 更多说明:
使用 unset() 释放变量之后,它将不再是 isset()。
PHP函数isset()只能用于变量,传递任何其它参数都将造成解析错误。 
检测常量是否已设置可使用 defined() 函数。

empty判断变量是否已配置

语法: int empty(mixed var);
返回值: 整数
函数种类: PHP 系统功能
内容说明本函数用来测试变量是否已经配置。若变量已存在、非空字符串或者非零,则返回 false 值;反之返回 true。值的注意的是 aulbach@unter.franken.de 指出 (27-May-1999) 若使用 empty($myvar) != !isset($myvar) 会造成 PHP 处理的问题。

以下的东西被认为是空的:

       "" (空字符串)
      
0 (作为整数的0)
       0.0 (作为浮点数的0)
      
"0" (作为字符串的0)
       NULL
      
FALSE
       array() (一个空数组)
      
$var; (一个声明了,但是没有值的变量)
empty() 判断一个变量是否为“空”,isset() 判断一个变量是否已经设置,empty() 和 isset() 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:empty还会检测变量是否为空、为零。当一个变量值为0,empty() 认为这个变量同等于空,即相当于没有设置。

post和get两种传递数据有什么区别?

1、POST是向服务器传递数据;GET是从服务器上获取数据。
2、POST是通过HTTP POST机制将表单内各个字段及其内容放置在html header内一起传送到action属性所指的url地址。用户看不到这个过程;GET是把参数数据队列加到提交表单action属性所指的url中,值和表单内各个字段一一对应,在url中可以看到。
3、对于GET方式,服务器端用Request.QueryString获取变量的值;对于POST方式,服务器端用Request.Form获取提交数据。
4、POST传送的数据量较大,一般默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB;GET传递的数据量较小,不能大于2KB。
5、POST安全性较高;GET安全性非常低,但是执行效率却比POST方法好。
6、在做数据添加、修改或删除时,建议用POST方式;而在做数据查询时,建议用GET方式。
7、对于机密信息的数据,建议采用POST数据提交方式。

写出PHP操作数据库增删给查语句格式?

增(Create):INSERT INTO table_name (field1,field2,……) VALUES (value1,value2,……);
删(Delete):DELETE FROM table_name WHERE id = $id;
改(Update):UPDATE table_name SET field1 = "new_value1",field2 = "new_value2" WHERE id = $id;
查(Select):SELECT * FROM table_name ……

在PHP中,字符串的定义可以使用英文单引号' ',也可以使用英文双引号" "。

对于字符串来讲,单双引号均可,但是记住单引号对变量不起作用。若变量需要用引号引起来必须用双引号。

遍历下列数组,并输出其键值 : $arr = array("李彦宏" => "百度","马云" => "阿里","马化腾" => "腾讯");并打印出其结果。

使用for循环

<?php
$arr = array("百度","阿里","腾讯");
$arrlen = count($arr);//获取数组的长度
for ($i=0; $i <$arrlen ; $i++) {
    $data[] = $arr[$i];
}
echo "<pre>"; //换行显示
print_r($data);
打印结果显示如下:
Array
(
    [0] => 百度
    [1] => 阿里
    [2] => 腾讯
)

使用foreach循环

<?php
$arr = array("百度","阿里","腾讯");
foreach ($arr as $value) {
    $data[] = $value;
}
echo "<pre>"; //换行显示
print_r($data);//打印结果和上面一样

使用 foreach (array_expression as $key => $value) 循环

<?php
$arr = array("李彦宏" => "百度","马云" => "阿里","马化腾" => "腾讯");
foreach ($arr as $key => $value) {
    $data[$key] = $value;
}
echo "<pre>"; //换行显示
print_r($data);
打印结果显示:
Array
(
    [李彦宏] => 百度
    [马云] => 阿里
    [马化腾] => 腾讯
)

注意到没?此时的data后是[$key]?而不是[]

向数组尾部  $arr = array("百度","阿里","腾讯");  中添加“知乎”,“微博”两个元素,并打印出其结果。

array_push(array,value1,value2...) 函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。

<?php
$arr = array("百度","阿里","腾讯");
array_push($arr,"知乎","微博");
echo "<pre>"; //换行显示
print_r($arr);
打印结果显示:
Array
(
    [0] => 百度
    [1] => 阿里
    [2] => 腾讯
    [3] => 知乎
    [4] => 微博
)
移除数组中重复的值   $arr = array("百度","阿里","腾讯","百度","微博");并打印出其结果。

array_unique(array) 函数移除数组中的重复的值,并返回结果数组。

<?php
$arr = array("百度","阿里","腾讯","百度","微博");
$data = array_unique($arr);
echo "<pre>";
print_r($data);
打印结果显示:
Array
(
    [0] => 百度
    [1] => 阿里
    [2] => 腾讯
    [4] => 微博
)
函数 in_array(search,array,type) 有什么作用?请举例说明。

in_array(search,array,type)检查数组中是否存在指定的值。

如果给定的值 search 存在于数组 array 中则返回 true。如果第三个参数设置为 true,函数只有在元素存在于数组中且数据类型与给定值相同时才返回 true。如果没有在数组中找到参数,函数返回 false。

<?php
$arr = array("百度","阿里","腾讯");
while (in_array("百度", $arr)) {
    echo "已经找到";
    break;
} //输出已经找到
$arr1 = array("百度","阿里","腾讯"); $arr2 = array("知乎","微博"); 合并这两个数组并打印出其结果。

array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次追加。

<?php
$arr1 = array("百度","阿里","腾讯");
$arr2 = array("知乎","微博");
$data = array_merge($arr1,$arr2);
echo "<pre>";
print_r($data);
打印结果显示:
Array
(
    [0] => 百度
    [1] => 阿里
    [2] => 腾讯
    [3] => 知乎
    [4] => 微博
)
创建一个名叫“user”、值为任意内容、保存时间为一天的cookie,并尝试输出该cookie的值
setcookie(name, value, expire, path, domain);
setcookie("user", "aierui", time()+3600*24;
输出
<?php
echo $_COOKIE["user"];
print_r($_COOKIE);
?>
声明一个名为name的变量,并赋值‘xiaoli’的session,并尝试输出该session的值
<?php
session_start(); //开启session
$_SESSION['name'] = "xiaoli";
//输出
echo $_SEESION['name'];
?>
你是如何理解类的概念,请写出任意一个简单类并实例化后有结果输出,如:定义一个简单的类Car,并实例化一个Car对象。可自行举例

涉及到代码部分希望根正苗红团队手动敲一敲?万一你有新的发现呢?