设为首页 收藏本站
查看: 254|回复: 0

[经验分享] php 面试分析

[复制链接]

尚未签到

发表于 2017-3-21 06:22:01 | 显示全部楼层 |阅读模式
  1,ereg preg_match  ereg_replace preg_replace 对这两种正则表达式的对比,
  bool ereg(string pattern ,string s1,[array regs])以区分大小写的方式在s1中寻找与制定的正则表达式所匹配的子串,如果匹配成功则把匹配项存入regs数组,$regs[1]表示第一个 $regs[0]表示全部,最多可以存储10个,找到返回true 反之false,<?php

if (ereg ("([0-9]{4})-([0-9]){1,2})-([0-9]{1,2})",$date,$regs)){
echo $regs[3].$regs[2].$regs[1]";
}else {
echo "Invalid date from :$date";
}
?>
ereg_replace(string pattern ,string replacement ,string string)//把string 中匹配pattern的部分替换为replacement,返回替换后的字符串,没有则返回原字符串,
$string ="This is a test";
echo str_replace(" is"," was",$string);//如果 pattern 包含有括号内的子串,则 replacement 可以包含形如 \\digit 的子串,这些子串将被替换为数字表示的的第几个括号内的子串;\\0 则包含了字符串的整个内容。最多可以用九个子串。括号可以嵌套,此情形下以左圆括号来计算顺序
echo ereg_replace("()is","\\1was","$string);//如果replacement中出现数字可能得不到期望的结果,会把数字作为字符的序列值来解释并应用,
echo ereg_replace("(()is)",\\2was",$string);  //outs This was a test
<?php
//将url替换为超链接
$text = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",
"<a href=\"\\0\">\\0</a>", $text);
?>
  preg_match(pattern ,subject ,arry ,flags);在subject 中搜索pattern 用搜索结果填充arry  flags设为PREG_OFFSET_CAPTURE表示返回的数字中的单元是 第一项为匹配字符,第二项为偏移量,preg_match()在第一次匹配之后停止搜索,preg_match_all()则会一直搜索到结尾,
  strpos()  返回字符第一次出现的位置 int  ucwords();把每个单词的第一个字母大写如果全为大写则还是大写,strtolower() ;转换为小写
  strstr()返回字符第一次出现的位置后面的字符,ucfirst();把单词的第一个字母大写strtoupper();转换为大写,

<?php
// 从 URL 中取得主机名
preg_match("/^(http:\/\/)?([^\/]+)/i",
"http://www.php.net/index.html", $matches);
$host = $matches[2];
// 从主机名中取得后面两段
preg_match("/[^\.\/]+\.[^\.\/]+$/", $host, $matches);
echo "domain name is: {$matches[0]}\n";
?>
preg_replace();
<?php
$string = "April 15, 2003";
$pattern = "/(\w+) (\d+), (\d+)/i";
$replacement = "\${1}1,\$3";
print preg_replace($pattern, $replacement, $string);
/* Output
======
April1,2003
*/
?>
  strtotime();返回unix字符时间戳 ,为字符串可以存储 比较大小,strtotime("now");如何把时间戳反转换为时间格式那,用date('y-m-d',str) 函数即可
  $nextWeek = time() + (7
* 24 * 60 *
60);
                   
// 7 days; 24
hours; 60 mins; 60secs
echo 'Now:       '. date('Y-m-d') ."\n";
echo
'Next Week: '. date('Y-m-d', $nextWeek) ."\n";
  print_r()与var_dump()输出数组的区别 var_dump可以显示值类型,array_values()返回数组中所有的值并建立索引
  文件目录操作,
  file_exists()文件是否存在,is_readable()是否可读,is_writable()是否可写 fopen()打开文件"r" "wb",fgets()从文件中读取一行,fclose()关闭文件,

<?php
$d = dir("/etc/php5");
echo "Handle: " . $d->handle . "\n";
echo "Path: " . $d->path . "\n";
while (false !== ($entry = $d->read())) {
echo $entry."\n";
}
$d->close();
?>
 
$d = dir(dirname(__file__));//--file--文件中的当前行号,

//echo "Handle: " . $d->handle . "\n";
//echo "Path: " .
$d->path . "\n";
while ( false !== ($entry = $d->read ()) ) {
 echo
$entry . "<br />";
  开发工具:studioeclipse 编辑器 mantis  缺陷跟踪 ietest 浏览器测试 firebug  js 网页测试,rational Rose 统一建模工具 powerdesigner   startUML
  php.ini 中的模块safe_mode安全模块,默认是Off 若是打开会影响,
  system,passthru,exec,shell_exec,popen,phpinfo等等大部分的文件操作函数。
因为Safe_mode是php非常重要
  的内嵌的安全机制。默认是关闭的。
  count()计算出数组中的单元个数和对象中的属性个数,substr($str,2)返回$str中从下标为2开始以后的字符
  字符操作:
  strpos($str,'a',1)在$str中找a 第一次出现的位置,当加上参数1时表示忽略第一个,
  strrpos($str,'a')在$str中寻找 忽略第一次匹配,返回int
  strrchr($str,num)在$str中匹配下标num以后的内容,返回字符串
  stristr()不区分大小写 的匹配后面的字符,返回字符stristr($str,'a')
  strstr()区分大小写的匹配
  多用单引号 不要在循环体中使用函数   $num = count($arry) for($i=1;$i<$num;$i++)
  error_reporting()报错级别
  $_SERVER() 参数获取ip地址REMOTE_ADDR当前用户的ip $_SERVER['SERVER_ADDR']服务器

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-352655-1-1.html 上篇帖子: PHP 10句话 下篇帖子: PHP日历程序
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表