首页 > 编程技术 > php

php 打印乘法口绝表代码

发布时间:2016-11-25 15:08

php教程 打印乘法口绝表代码
刚才php是经常老师会要我们做这个的题目,今天我再做一次打印乘法口绝

<?php

    /*
     *打印乘法口绝表
     */
    echo "九灵九乘法口绝表<br><br><br>";
    echo "<table>";
    for($i=1;$i<=9;$i++){
        echo "<tr>";
        for($j=1;$j<=$i;$j++){
            echo "<td>".$j."*".$i."=".($j*$i)."</td>";
        }
       
        echo "</tr>";
    }

    echo "</table>";
   
    echo "<br><br><br><br><br><br>";
    echo "<table>";
    for($i=1;$i<=9;$i++){
        echo "<tr>";
        for($j=$i;$j<=9;$j++){
            echo "<td>".$i."*".$j."=".($j*$i)."</td>";
        }
       
       
        echo "</tr>";
    }

    echo "</table>";
?>

一个简单的求和

function sum($n)
{
        if($n>1)
        {
                return sum($n-1)+$n;
        }else
        {
                return 1;
        }
}
echo sum(100);

PHP Array 函数

PHP:指示支持该函数的最早的 PHP 版本。

函数 描述 PHP
array() 创建数组。 3
array_change_key_case() 返回其键均为大写或小写的数组。 4
array_chunk() 把一个数组分割为新的数组块。 4
array_combine() 通过合并两个数组来创建一个新数组。 5
array_count_values() 用于统计数组中所有值出现的次数。 4
array_diff() 返回两个数组的差集数组。 4
array_diff_assoc() 比较键名和键值,并返回两个数组的差集数组。 4
array_diff_key() 比较键名,并返回两个数组的差集数组。 5
array_diff_uassoc() 通过用户提供的回调函数做索引检查来计算数组的差集。 5
array_diff_ukey() 用回调函数对键名比较计算数组的差集。 5
array_fill() 用给定的值填充数组。 4
array_filter() 用回调函数过滤数组中的元素。 4
array_flip() 交换数组中的键和值。 4
array_intersect() 计算数组的交集。 4
array_intersect_assoc() 比较键名和键值,并返回两个数组的交集数组。 4
array_intersect_key() 使用键名比较计算数组的交集。 5
array_intersect_uassoc() 带索引检查计算数组的交集,用回调函数比较索引。 5
array_intersect_ukey() 用回调函数比较键名来计算数组的交集。 5
array_key_exists() 检查给定的键名或索引是否存在于数组中。 4
array_keys() 返回数组中所有的键名。 4
array_map() 将回调函数作用到给定数组的单元上。 4
array_merge() 把一个或多个数组合并为一个数组。 4
array_merge_recursive() 递归地合并一个或多个数组。 4
array_multisort() 对多个数组或多维数组进行排序。 4
array_pad() 用值将数组填补到指定长度。 4
array_pop() 将数组最后一个单元弹出(出栈)。 4
array_product() 计算数组中所有值的乘积。 5
array_push() 将一个或多个单元(元素)压入数组的末尾(入栈)。 4
array_rand() 从数组中随机选出一个或多个元素,并返回。 4
array_reduce() 用回调函数迭代地将数组简化为单一的值。 4
array_reverse() 将原数组中的元素顺序翻转,创建新的数组并返回。 4
array_search() 在数组中搜索给定的值,如果成功则返回相应的键名。 4
array_shift() 删除数组中的第一个元素,并返回被删除元素的值。 4
array_slice() 在数组中根据条件取出一段值,并返回。 4
array_splice() 把数组中的一部分去掉并用其它值取代。 4
array_sum() 计算数组中所有值的和。 4
array_udiff() 用回调函数比较数据来计算数组的差集。 5
array_udiff_assoc() 带索引检查计算数组的差集,用回调函数比较数据。 5
array_udiff_uassoc() 带索引检查计算数组的差集,用回调函数比较数据和索引。 5
array_uintersect() 计算数组的交集,用回调函数比较数据。 5
array_uintersect_assoc() 带索引检查计算数组的交集,用回调函数比较数据。 5
array_uintersect_uassoc() 带索引检查计算数组的交集,用回调函数比较数据和索引。 5
array_unique() 删除数组中重复的值。 4
array_unshift() 在数组开头插入一个或多个元素。 4
array_values() 返回数组中所有的值。 4
array_walk() 对数组中的每个成员应用用户函数。 3
array_walk_recursive() 对数组中的每个成员递归地应用用户函数。 5
arsort() 对数组进行逆向排序并保持索引关系。 3
asort() 对数组进行排序并保持索引关系。 3
compact() 建立一个数组,包括变量名和它们的值。 4
count() 计算数组中的元素数目或对象中的属性个数。 3
current() 返回数组中的当前元素。 3
each() 返回数组中当前的键/值对并将数组指针向前移动一步。 3
end() 将数组的内部指针指向最后一个元素。 3
extract() 从数组中将变量导入到当前的符号表。 3
in_array() 检查数组中是否存在指定的值。 4
key() 从关联数组中取得键名。 3
krsort() 对数组按照键名逆向排序。 3
ksort() 对数组按照键名排序。 3
list() 把数组中的值赋给一些变量。 3
natcasesort() 用“自然排序”算法对数组进行不区分大小写字母的排序。 4
natsort() 用“自然排序”算法对数组排序。 4
next() 将数组中的内部指针向前移动一位。 3
pos() current() 的别名。 3
prev() 将数组的内部指针倒回一位。 3
range() 建立一个包含指定范围的元素的数组。 3
reset() 将数组的内部指针指向第一个元素。 3
rsort() 对数组逆向排序。 3
shuffle() 把数组中的元素按随机顺序重新排列。 3
sizeof() count() 的别名。 3
sort() 对数组排序。 3
uasort() 使用用户自定义的比较函数对数组中的值进行排序并保持索引关联。 3
uksort() 使用用户自定义的比较函数对数组中的键名进行排序。 3
usort() 使用用户自定义的比较函数对数组中的值进行排序。 3

PHP Array 常量

PHP:指示支持该常量的最早的 PHP 版本。

常量 描述 PHP
CASE_LOWER 用在 array_change_key_case() 中将数组键名转换成小写字母。  
CASE_UPPER 用在 array_change_key_case() 中将数组键名转换成大写字母。  
SORT_ASC 用在 array_multisort() 函数中,使其升序排列。  
SORT_DESC 用在 array_multisort() 函数中,使其降序排列。  
SORT_REGULAR 用于对对象进行通常比较。  
SORT_NUMERIC 用于对对象进行数值比较。  
SORT_STRING 用于对对象进行字符串比较。  
SORT_LOCALE_STRING 基于当前区域来对对象进行字符串比较。 4
COUNT_NORMAL    
COUNT_RECURSIVE    
EXTR_OVERWRITE    
EXTR_SKIP    
EXTR_PREFIX_SAME    
EXTR_PREFIX_ALL    
EXTR_PREFIX_INVALID    
EXTR_PREFIX_IF_EXISTS    
EXTR_IF_EXISTS    
EXTR_REFS    

 

收藏了php教程数组的常用操作函数

在数组中搜索一个特定值,如果找到返回TRUE否则返回FALSE
boolean in_array(mixed needle,array haystack[,boolean strict])

在数组中找到一个指定的健,如果找到返回TRUE否则返回FALSE
boolean array_eky_exists(mixed key,array array)

在数组中搜索一个特定值,如果找到返回TRUE否则返回FALSE
boolean array_search(mixed needle,array haystack[,boolean strict])

获取数组所有键组成的新数组
array array_keys(array array[,mixed search_value])

获取数组所有值组成的新数组
array array_values(array array)

确定数组大小
integer count(array array[,int mode])

integer sizeof(array array[,int mode])

统计数组元素出现频率
array array_count_values(array array)

删除数组中重复的值,返回一个由唯一值组成的数组
array array_unique(array array)

逆置数组元素顺序,preserve_key如果为TRUE则数组键值顺序不变
array array_reverse(array array[,boolean preserve_key])

置换数组键和值
array array_flip(array array)

数组顺序排序,sort_flags参数可选,默认行为
SORT_NUMBERIC,按数值排序,对整数或浮点数排序很有用

SORT_REGULAR,按照ASCII值排序

SORT_STRING,按接近人所认识的正确顺序排序

asort函数键值顺序不变

void sort(array array[,int sort_flags])

void asort(array array[,int sort_flags])

数组逆序排序,sort_flags参数可选,默认行为
SORT_NUMBERIC,按数值排序,对整数或浮点数排序很有用

SORT_REGULAR,按照ASCII值排序

SORT_STRING,按接近人所认识的正确顺序排序

arsort函数键值顺序不变

void rsort(array array[,int sort_flags])

void arsort(array array[,int sort_flags])

数组自然排序
void natsort(array array)

不区分大小写的自然排序
void natcasesort(array array)

健键值对数组排序
boolean ksort(array array[,int sort_flags])

健键值对数组逆序排序
boolean krsort(array array[,int sort_flags])

根据用户自定义顺序排序
void usort(array array,callback function_name)

将数组合并到一起,返回一个联合的数组。array_merge后面覆盖前面,array_merge_recursive合并在一起
array array_merge(array array1[array array2……])//一个以上

array array_merge_recursive(array array1,array array2[,array ……])//两个以上

键和值组成新的数组
array array_combine(array key,array value)

返回数组一部分,从健offset开始,到offse+length位置结束
array array_slice(array array, int offset [,int length])

删除从offset开始到offset+length结束的所有元素,并以数组的形式返回删除的元素
array array_splice(array, int offset [,int length[,array peplacement]])

求数组的交集,键值为第一个数组中键值
array array_intersect(array array1,array array2[,arrayN……])

求数组的交集包含了键值相等,键值为第一个数组中键值
array array_intersect_assoc(array array1,array array2[,arrayN……])

求数组的差集,第一个数组在其他数组没有的值
array array_diff(array array1,array array2[,arrayN……])

求数组的差集,第一个数组在其他数组没有的值包含了键值相等
array array_diffassoc(array array1,array array2[,arrayN……])

返回数组中一个或多个键值
mixed array_rand(array array[,int num_entries])

随即洗牌函数
void shuffle(array input_array)

对数组中的值求和
mixed array_sum(array array);

将数组分解为一个多维数组,它包含了size个元素
array array_chunk(array array, int size [,boolean preserve_keys])

php教程 feof函数用法与注意事项

eof() 函数检测是否已到达文件末尾 (eof)。
如果文件指针到了 EOF 或者出错时则返回 TRUE,否则返回一个错误(包括 socket 超时),其它情况则返回 FALSE。
语法
feof(file)
参数 描述
file 必需。规定要检查的打开文件。
说明
file 参数是一个文件指针。这个文件指针必须有效,并且必须指向一个由 fopen() 或 fsockopen() 成功打开(但还没有被 fclose() 关闭)的文件。

<?php
$file = fopen("test.txt", "r");

//输出文本中所有的行,直到文件结束为止。
while(! feof($file))
  {
  echo fgets($file). "<br />";
  }

fclose($file);
?>


if(file_exists($pmr_config["datasetfile"])){
 $tmp_counter = 0;
 $hd = fopen($pmr_config["datasetfile"], "r");
 if($hd !== FALSE){
  while (!feof($hd)) {
   $buffer = fgets($hd);
                        if($tmp_counter >= $seq){
    $result[] = $buffer;
   }
                $tmp_counter++;

                if($tmp_counter >=$seq + $size){
                    break;
                }
 }
 }else{
  echo "warning:open file {$pmr_config["datasetfile"]} failed!PHP_EOL";
 }
}else{
 echo "warning:file {$pmr_config["datasetfile"]} does not exsits!PHP_EOL";
}

其中当读取行数包括文件结尾的时候,$result数组中总会比期望的内容多出来一个元素:
(boolean)false
按说,如果读取到最后一行,feof函数会返回TRUE,然后while循环就退出了,为什么不是呢?
1
while (!feof($hd)) {
事情原来是这样子的:

<?php
// if file can not be read or doesn't exist fopen function returns FALSE
$file = @fopen("no_such_file", "r");

// FALSE from fopen will issue warning and result in infinite loop here
while (!feof($file)) {
}

fclose($file);
?>

feof() is, in fact, reliable.  However, you have to use it carefully in conjunction with fgets().  A common (but incorrect) approach is to try something like this:


<?
$fp = fopen("myfile.txt", "r");
while (!feof($fp)) {
  $current_line = fgets($fp);
  // do stuff to the current line here
}
fclose($fp);
?>

提示和注释
提示:feof() 函数对遍历长度未知的数据很有用。
注意:如果服务器没有关闭由 fsockopen() 所打开的连接,feof() 会一直等待直到超时而返回 TRUE。默认的超时限制是 60 秒,可以使用 stream_set_timeout() 来改变这个值。
注意:如果传递的文件指针无效可能会陷入无限循环中,因为 EOF 不会返回 TRUE。

php教程中 explode查找某个字符是否存在的方法

explode ( string separator, string string [, int limit] )
separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包含的值在 string 中找不到,那么 explode() 将返回包含 string 单个元素的数组。
 
*/
//explode 实例一
$explode = "aaa,bbb,ccc,ddd,explode,jjjj";
$array = explode( ',' ,$explode );
print_r($array);
/*
结果为
Array
(
    [0] => aaa
    [1] => bbb
    [2] => ccc
    [3] => ddd
    [4] => explode
    [5] => jjjj
)
*/
//我们在处理日期或取得文件扩展名时就可以用explode函数与end函数操作,下面来看实例
$file ="www.111cn.net.gif";
 
 $extArray = explode( '.' ,$file );
 $ext = end($extArray);
 echo $ext;
 
/*
  输出值为.gif

使用explode查找某个字符是否存在的方法

<?php
if($_MODULE[tg1_tjly]){
  $tg1_tjly = explode("|",$_MODULE[tg1_tjly]);
   if(count($tg1_tjly)>1){ //重点在这里,统计数组大于1的时候则说明含有1个或以上的间隔符号“|”。
    $tg1_tjly_tit = $tg1_tjly[0];
    $tg1_tjly_con = $tg1_tjly[1];
   }else{
    $tg1_tjly_tit = '推荐理由';
    $tg1_tjly_con = $_MODULE[tg1_tjly];
   }
}else{
  $tg1_tjly_tit = '输入推荐理由标题'; 
  $tg1_tjly_con = '输入推荐理由内容,请输入推荐理由内容,请输入推荐理由内容。';
  } 
?>

A: 跟变量命名一样,不可以内置函数名,不可以用数字来命名函数.
B: 重复调用性.
C: 支持静态元素.
D: 支持不固定参数
个人建议技术员对函数做如下规范:
A: 函数名建立分类前缀, 比如字符型的就str_xxx, 布尔型的就 bool_xxxx, 公共函数就 open_xxx 应用型的函数就 APP_xxxx, 临时型的就 temp_xxx
B: 函数的第一步请先判断, 虽然有时自己知道一定会传入某个类型的参数,但作为标准化来说, 先判断再处理是为了程序的健壮也是为了安全.
C: 不要污染原始变量, 如果你有项目经验,有debug应用经验,你就会明白.
D: 引用函数尽量少用,占用内存非常大,损耗严重.
E:不要用大写来编写代码, 不要觉得很cool.
F: 过份产生函数是一种退步的方式, 你可以思考着是否具有重复性, 是否需要包装性, 随意将过程封成函数不是明智之举.
G: 写好你的函数注释.
码如下:

<?php教程
/**
* @author Yuans
* @copyright php.com
* @package 函数的常用使用方法及特性.
*/
# 基础函数编写注意点.
// 为了方便ide的管理及代码提示功能,我们在所有函数命名时使用fun_开头.
function fun_cutstr($str,$str_width=0,$str_pad='...'){
// 每个函数都得考虑一些异常的情况, 比如函数引入不对, 为0,为false等.
// 由于外部期望返回截取字符后的字符,所以就算此函数不工作,也应该将它传进来的值给返回.
if(empty($str) === true || empty($str_width) === true)
return $str;
// 参数过滤
$str_width += 0;
// 保持一个原则, 尽量不要去污染原始参数,
$return_str = mb_strcut($str,0,$str_width,'utf-8');
// 加强判断, 如果return_str无法有值,由于是mb函数,许多服务器会无法执行.
if(empty($return_str) === false){
return $return_str.$str_pad;
}else{
return $str;
}
}
echo fun_cutstr('aaaaaaaaaaaaaaaaaaaaaaaa',5); // out disply: "aaaaa...";
# 由于是utf-8编码, 所以每个汉字为4字节, 此处将返回"我是...";
echo fun_cutstr('我是个技术工作者',8);
# 或者我们需要考虑对函数的严重破坏,比如如下函数
echo fun_cutstr(false); //out: false
echo fun_cutstr('tbbbbbbbbs','aaaaaaaa'); // out: tbbbbbbbbs
echo fun_cutstr('','aaaaaaaa'); //out: empty
?>

PHP函数的一些基础知识
复制代码 代码如下:

<?php
$b = &fun_cutstr('aaaaaaaaaaaaaaaaaaaaaaaa',5); // out disply: "aaaaa...";
fun_cutstr('cccccccccccccccccc',5);
echo $b;
?>

引用函数将在php 5.3版本上无法正常运行, 6.0也最终将其抛弃, 理论上讲echo $b,将会返回ccccc...
$b引入了函数的地址, 为此函数的任何改变都会被赋值给$b.
当然这些真的可以很少用, 不必太在意,特别是新学习者.
静态函数如下表示:
复制代码 代码如下:

<?php
/**
* @author Yuans
* @copyright php.com
* @package 函数的常用使用方法及特性.
*/
# 静态函数编写注意点.
function fun_static(){
static $a = 1;
echo $a ++;
}
fun_static();
fun_static();
fun_static();
?>


static $a = 1; 仅会在第一次调用函数时执行, 表明它是个静态, 第二次执行时, $a变量就是取回静态的值, 而不会去执行$a = 1的赋值.如此类推, 数值不停地相加.<BR>

 

标签:[!--infotagslink--]

您可能感兴趣的文章: