第二十四套

1.不用PHP函数,用方法写一个反转字符串的函数;

header('content-type:text/html;charset=utf-8');
$str = 'OK是你我的啊a,c? abc';
function getrev($str,$encoding="utf-8"){
    $length = mb_strlen($str);
    $result = '';
    for ($i=$length-1; $i >= 0 ; $i--) { 
        $result .= mb_substr($str,$i,1,$encoding);
    }
    return $result;
}
echo getrev($str);

2.下面的一段php代码,写出输出结果,

/**** 这个程序 ****/
$a=0;
$b=0;
if(($a=3)>0 || ($b=3)>0){   
   $a++;
   $b++;
   echo $a;
   echo $b;//输出b的值
}

答:41

3.写一个方法,可以遍历文件夹下的所有文件和文件夹。

header('content-type:text/html;charset=utf-8');
function my_scandir($dir){
    $files = array();
    if(is_dir($dir)){
        if($handle=opendir($dir)){
            while(($file=readdir($handle))!==false){
                if($file!='..'&&$file!='.'){
                    if(is_dir($dir.'/'.$file)){
                        $files[$file] = my_scandir($dir.'/'.$file);
                    }else{
                        $files[] = $file;
                    }
                }
            }
            closedir($handle);
            return $files;
        }
    }

}
$dir = 'H:/study/WWW/phpMyAdmin/js';
echo "
";
var_dump(my_scandir($dir));
echo "
";

4.以下数组已赋给smarty模板,如何用section循环输出到页面?如果需要对数组进行非空判断要用什么语句?

{section name=n loop=$arr}
    name:{$arr[n]}
{/section} { if $array neq ""} {/if}

5.两张关联表,删除主表中已经在副表中没有的信息。主表是info附表是infobz,关联的字段是infid

delete from info where info.infid not in ( select distinct infobz.infid from infobz)

6.写出选择出销售额最高的十个产品的SQL语句,利用下表:

Products(product_id,product_name,price,sell_num);
其中product_id为产品id(主键),price为价格,sell_num为销售量。

SELECT product_id, product_name, price, sell_num
FROM Products
ORDER BY (
sell_num * price
) DESC 
LIMIT 0 , 10;

你可能感兴趣的:(PHP-面试题总集)