仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2308|回复: 18
打印 上一主题 下一主题

[学习教程] PHP编程:利用PHP制造静态网页过程当中的五个技能

[复制链接]
海妖 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-16 00:25:20 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
到现在,对排版还是不很熟练,经常会排不好。   1. str_replace
str_replace是经常使用的php函数,用于字符串交换,常常看到某些php新工资了交换一批字符串,写了很多多少行str_replace,其实是惨不忍睹。
好比这个例子:
PHP:
$str = '或人的栖息地 --- www.webjx.com';
$str = str_replace('或人', '坏人', $str);
$str = str_replace('的', 'di', $str);
$str = str_replace('栖息地', '猪窝窝', $str);
$str = str_replace('www.webjx.com', 'webjx.com', $str);
以上,交换了4次字符串,实践只需换个写法,一行就弄定了:
$str = '或人的栖息地 --- www.webjx.com';
$str = str_replace(array('或人', '的', '栖息地', 'www.webjx.com'), array('坏人', 'di', '猪窝窝', 'webjx.com'), $str);
2. array
常常看到有人拿数组如许写:echo $arr[some_key];
下面这行代码能跑,看上去也没甚么大成绩,然而假如你把php.ini的error notice翻开的话,会收到一多量error。php解析器起首是拿“some_key”看成一个常量来注释的,但假如没有界说some_key如许一个常量,解析器仍是很宽容的把它看成了一个字符串来对待。因而新人同窗们最好写完全一点:
echo $arr['some_key'];如许就没有成绩了,假如你要把它放在双引号中连用,也不克不及免却引号,可以如许写:echo "这是混在双引号中的字符串{$arr['some_key']}";
3. 类型戏法
类型戏法相当好用,好比有一个表单提交过去的变量,正常情形下它应当是整型的,有时分偷懒省去校验的写法可所以如许的:
$intVar = (int)$_POST['post_var'];
再好比数组,有时分写键值要打引号是否是很不爽啊,咱们可以把它转换成object,好比:
$arr = array('name' => 'volcano', 'sex' => 'male');
$arr = (object)$arr;
echo $arr->name;
echo $arr->sex; 是否是很省事?
4. lambda函数
lamda函数和array_*系列函数利用有奇效,拿php手册上的一个例子来讲:
PHP:
<?php
   $av = array("the ", "a ", "that ", "this ");
   array_walk($av, create_function('&$v,$k', '$v = $v . "mango";'));
  print_r($av);
?>
最少省了一个for轮回
5. 嵌套轮回显示表格的单位格
嵌套轮回显示表格的单位格,这是一个很老的话题哦,常常会要在某个单位格后边加个前提判别甚么的,思索是否是要输入tr抑或是td标签。
俺这里引见一个举措,使用array_chunk函数可以对照工整的输入html,见下例,这个例子要输入一个4行6列的表格:
<?php
$arr = range(1, 24); //这个会生成一个数组array(1,2,3,4....24)
$arr = array_chunk($arr, 6);
// output table
?>
<table>
<?php foreach($arr as $row): ?>
<tr>
  <?php foreach($row as $col):?>
  <td><?php echo $col?></td>
  <?php endforeach;?>
</tr>
<?php endforeach;?>
</table>
培训的第二阶段,开始了PHP语言语法结构和应用的学习。
海妖 该用户已被删除
沙发
 楼主| 发表于 2015-3-6 15:29:07 | 显示全部楼层
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-11 05:40

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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