Maison > Article > développement back-end > PHP异趣开发一
PHP趣味开发一
最近时间有些充裕,利用PHP实现了几个有意思的东东,拿来分享一下:
<?php /** * php画个菱形 * * 思路:多少行for一次,然后在里面空格和标记符号for一次。 * * @author flyer0126 * @date 2011-12-09 * */ //上半部分 for ($i=0; $i<10; $i++){ for ($j=0; $j<9-$i; $j++){ echo " "; } for ($k=0; $k<(2*$i+1); $k++){ echo "`"; } echo "<br/>"; } //下半部分 for ($i=1; $i0; $k--){ echo "`"; } echo "<br>"; } /** * PHP实现杨辉三角 * * 思路:每一行的第一位和最后一位是1,没有变化,中间是前排一位与左边一排的和,这种算法是用一个二维数组保存,一行一行的输出。 * 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 * * @author flyer0126 * @date 2011-12-09 * */ //变量初始化 $arr = array(); //设置固定值1 for ($i=0; $i"; } /** * 在一组数中,要求插入一个数,按其原来顺序插入,维护原来排序方式。 * * 思路:找到比要插入数大的那个位置,替换,然后把后面的数后移一位。 * * @author flyer0126 * @date 2011-12-08 * */ //初始化数组变量(升序) $arr = array(1, 3, 5, 7, 9); //插入6 for ($i=0; $i<count if count for> $j+1) ? $tmp2 = $arr[$j] : ''; $arr[$j] = $tmp1; $tmp1 = $tmp2; } break; } } //输出 print_r($arr); //Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 6 [4] => 7 [5] => 9 ) ?></count>