1.mktime(hour,minute,second,month,day,year);
返回一个日期的 UNIX 时间戳。然后使用它来查找该日期的天
2.ceil(int)
向上取整
3.int intval ( [mixed] $var [, int $base = 10 ] )?????
获取变量的整数值
4.小易有一个长度为N的正整数数列A = {A[1], A[2], A[3]..., A[N]}。牛博士给小易出了一个难题:对数列A进行重新排列,使数列A满足所有的A[i] * A[i + 1](1 ≤ i ≤ N - 1)都是4的倍数。小易现在需要判断一个数列是否可以重排之后满足牛博士的要求。
输入描述:
输入的第一行为数列的个数t(1 ≤ t ≤ 10),
接下来每两行描述一个数列A,第一行为数列长度n(1 ≤ n ≤ 10^5)
第二行为n个正整数A[i](1 ≤ A[i] ≤ 10^9)
输出描述:
对于每个数列输出一行表示是否可以满足牛博士要求,如果可以输出Yes,否则输出No。
示例1
2
3
1 10 100
4
1 2 3 4
输出
Yes
No
只能判断输出的那行?????
<?php
function demo($arr){
$num1 = 0;
$num2 = 0;
$num4 = 0;
$count = count($arr);
for($i = 0; $i < $count; $i++){
if($arr[$i] % 4 == 0 ){
$num4++;
}elseif($arr[$i] % 2 ==0){
$num2++;
}
}
$num1 = $count - $num2 -$num4;
if($count == 1 && $num4){
if(($num4 >= $num1 - !$num2)){
echo "yes";
}else{
echo "no";
}
}else{
echo "no";
}
}
$arr = array(2);
demo($arr);
5.一段字符串有中英文混合的如何计算字符串长度
<?php
$str='中a';
echo (strlen($str) + mb_strlen($str,'UTF8')) / 2;
3
6.分割中文字符串为数组
法1:
<?php
$str = "hi钓鱼岛是中国的";
preg_match_all("/./u", $str, $arr);
print_r($arr[0]);
?>
Array
(
[0] => h
[1] => i
[2] => 钓
[3] => 鱼
[4] => 岛
[5] => 是
[6] => 中
[7] => 国
[8] => 的
)
法2:
<?php
$str = "爱莲说";
preg_match_all('/[\x{4e00}-\x{9fa5}]/u',$str,$string);
dump($string);
?>
E:\wamp64\www\demo\20170910demo\demo2.php:4:
array (size=1)
0 =>
array (size=3)
0 => string '爱' (length=3)
1 => string '莲' (length=3)
2 => string '说' (length=3)
7.getcwd()
获取当前工作目录
8.处理以下文件内容,将域名取出并进行计数排序,如处理:
http://www.baidu.com/index.html
http://www.baidu.com/1.html
http://post.baidu.com/index.html
http://mp3.baidu.com/index.html
http://www.baidu.com/3.html
http://post.baidu.com/2.html
得到如下结果: 域名的出现的次数 域名
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
可以使用bash/perl/php/c任意一种
<?php
$sites = [
'http://www.baidu.com/index.html',
'http://www.baidu.com/1.html',
'http://post.baidu.com/index.html',
'http://mp3.baidu.com/index.html',
'http://www.baidu.com/3.html',
'http://post.baidu.com/2.html'
];
$count = count($sites);
$arr = array();
for($i=0; $i<$count; $i++){
$tmp = strstr($sites[$i], strrchr($sites[$i], "/"), true);
$arr[] = substr(strrchr($tmp, "/"), 1);
}
$result = array_count_values($arr);
foreach ($result as $k => $v) {
echo $v." ".$k."</br>";
}
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
法二:
<?php
$sites = [
'http://www.baidu.com/index.html',
'http://www.baidu.com/1.html',
'http://post.baidu.com/index.html',
'http://mp3.baidu.com/index.html',
'http://www.baidu.com/3.html',
'http://post.baidu.com/2.html'
];
$n = count($sites);
$host_arr = [];
for ($i=0; $i < $n; $i++) {
$parse_url = parse_url($sites[$i]);
$host_arr[] = $parse_url['host'];
}
$host_same_arr = array_count_values($host_arr);
foreach ($host_same_arr as $key => $value) {
echo $value.' '.$key . '</br>';
}
?>
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
9.string strrchr ( string string, string needle )
查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符,如果没找到则返回 FALSE。
<?php
$str="AAA|BBB|CCC";
echo strrchr($str, "|");
?>
|CCC
10.[mixed] parse_url ( string $url[, int $component = -1 ] )
解析 URL,返回其组成部分
<?php
parse_url('http://www.baidu.com/index.html');
Array (
[scheme] => http
[host] => www.baidu.com
[path] => /index.html
)
11.array_walk(array,myfunction,userdata...)
对数组中的每个元素应用用户自定义函数
例子题目来源于该文第八题
<?php
$sites = [
'http://www.baidu.com/index.html',
'http://www.baidu.com/1.html',
'http://post.baidu.com/index.html',
'http://mp3.baidu.com/index.html',
'http://www.baidu.com/3.html',
'http://post.baidu.com/2.html'
];
$tmp = [];
function callback($v, $k) {
global $tmp;
$tmp[] = parse_url($v, PHP_URL_HOST);
}
array_walk($sites, 'callback');
$data = array_count_values($tmp);
foreach ($data as $k => $v) {
echo $v . " " . $k . "</br>";
}
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
12.array_map(myfunction,array1,array2,array3...)
将函数作用到数组中的每个值上,每个值都乘以本身,并返回带有新值的数组:
<?php
function myfunction($v)
{
return($v*$v);
}
$a=array(1,2,3,4,5);
print_r(array_map("myfunction",$a));
?>
Array (
[0] => 1
[1] => 4
[2] => 9
[3] => 16
[4] => 25
)
13.parse_str(string,array)
把查询字符串解析到变量中