PHP 自定义函数实现系统函数功能
PHP 自定义函数实现系统函数功能
总是用别人写好的函数 是不是觉得不爽?好,下面跟着我来写吧~~以下代码全部由自己编写,绝无抄袭之嫌~~现贴上,仅供参考.(可能有些功能没有写全)
说明一下,写系统函数再拿来使用确实很蠢,但只是作为练习,还有,在面试时确实是算法考得多,网上找来的面试题也大都要靠算法\语法熟练才能完成~~!
1,自定义函数实现strlen()函数的功能,该函数返回一个字符串的长度;
function my_strlen2($str){
if (!is_string($str)){
return false;
}
for ($i=0;($str{$i}) !=="";$i++);
return $i;
}
2,自定义函数实现strrev()函数功能,该函数把一段字符串倒过来输出(即字符串反转);
function my_strrev($str){
$cut = '';
for ($i = 0; $str{$i}!==''; $i++){
$cut = $str{$i}.$cut;
}
return $cut;
}
更简单的方法:
function myStrlen($str){
for ($i=0; $str[$i]!==''; $i++);
return $i;
}
for ($i=myStrlen($str); $i>-1; $i--){
$res .= $str[$i];
}
echo $res;
3.自定义函数实现count()函数功能,该函数返回数组中元素的个数;
function my_count($arr){
if (!is_array($arr)){
return false;
}
$i = 0;
while ($arr{$i}){
$i++;
}
return $i;
}
4.冒泡排序法;
function my_sort($arr){
$len = count($arr);
for ($i=0; $i<$len-1; $i++){
for ($j=$i; $j<$len; $j++){
if ($arr[$i] > $arr[$j]){
$res = $arr[$i];
$arr[$i] = $arr[$j];
$arr[$j] = $res;
}
}
}
return $arr;
}
5.自定义函数实现strpos()函数功能,该函数返回一个字符在字符串中的位置;
function my_strpos($str1,$str2){
if (!is_string($str1) || !is_string($str2)){
相关文档:
如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。
当对父类的方法进行重写时,子类中的方法必须和父类中对应的方法具有相同的方法名称,在PHP5中不限制输入参数类型、参数数量和返回值类型。(这点和JAVA不同)
子类中的覆盖方法不能使用比父类中被覆 ......
final---用于类、方法前。
final类---不可被继承。
final方法---不可被覆盖。
final类不能被继承。
如果我们不希望一个类被继承,我们使用final来修饰这个类。
于是这个类将无法被继承。
比如我们设定的Math类,涉及了我们要做的数学计算方法,这些算法也没有必要修改,也没有必要被继承,我们把它设置成final类型。 ......
在PHP5类中继续使用cons修饰常量。我们使用const定义一个常量,定义的这个常量不能被改变。在PHP5中const定义的常量与定义变量的方法不同,不需要加$修饰符。 const PI = 3.14; 这样就可以。
而使用const 定义的常量名称一般都大写,这是一个约定,在任何语言中都是这样。
如果定义的常量由多个单词组成,使用 _ 连接, ......
一.环境的安装
下载安装包,Google上搜索php+apache+sql的安装包并安装。
二.扩展编程
针对在PHP环境下掉用C编程(c程序编译的dll),主要有以下两种方式。
1.利用ATL构建DLL组件,然后再PHP里面直接调用,调用方法 ......
环境软件版本介绍:
APACHE 2.0.59
PHP5.2.3
MYSQL5.0.45
GD-2.0.35
Zend Optimizer v3.3.0
&n ......