仓酷云

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

[学习教程] PHP网页编程之PHP句律例则

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:35:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
小试一下身手,大概是没问题了,那么交给你个任务,做个留言本吧,这和HELLO WORLD有一比啊!^_^,同是新手面临的第一道关。   1.复杂句律例则(用花括号界定变量名,合用于PHP一切版本):
$a = 'flower';
echo "She received some $as";
// 有效;字母s会被当做无效的变量名构成元素,然而这里的变量是$a
echo "She received some ${a}s"; // 无效
echo "She received some {$a}s"; // 无效;保举的利用办法
咱们但愿表达的是”她收到一些花“,语境中的flower应当采取单数模式(也就是说应当在前面加上S),然而假如不合错误变量做任何界定的话,就会呈现第一个echo的情形。明显咱们但愿输入的是$a而不是$as。那末咱们凡是是怎样来处置这个输入的呢?
echo "She received some $a"."s";
echo "She received some ".$a."s";
// 这两种习气性的写法应当没有加花括号的写法简约了然吧?
注重:不论{是呈现在$后面仍是前面,只要二者紧挨着时花括号才会被当做是界定符号。不要在之间加空格,要否则就会被看成通俗的花括号处置
echo "She received some { $a}s";
// 输入的了局为:She received some { flower}s

2.庞杂句律例则(用花括号界定表达式等,利用与PHP4+):
echo "无效的写法: {$arr[4][3]}";
// 无效;界定多维数组
echo "无效的写法: {$arr['foo'][3]}";
// 无效;当在字符串中利用多维数组时,必定要用括号将它括起来
echo "无效的写法: {$this->width}00";
// 无效;假如不界定的话,就会酿成 $this->width00
echo "无效的写法: {$this->value[3]->name}";
// 无效;该例演示了界定链式挪用
echo "无效的写法: $name: {${$name}}";
// 无效;该例演示的后果实践上是一个可变变量
echo "无效的写法: {${getName()}}";
// 无效;该例演示了将函数的前往值作为变量名
echo "无效的下发: {${$this->getName()}}";
// 无效;该例演示了将函数的前往值作为变量名
注重1:echo "如许写无效吗: {getName()}";输入了局为:'如许写无效吗:
{getName()}'。由于外面不含$,所以花括号不会被看成界定符
注重2:echo "如许写无效吗:{$arr[foo][3]}"; 在回覆这个成绩前咱们先来停止一个实行:
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd'=>'e');
echo "This is $arr[d]";
// 咱们发明如许写是没有成绩的,那末咱们像上面如许写呢?
echo $arr[d];
发生了如许的毛病:
Notice: Use of undefined constant d - assumed 'd'
注重:采取了不决义的常量d,能够应当为'd'
那末假如咱们像上面如许修正一下代码的话
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd'=>'e');
define('f', 'd');
echo $arr[f];
咱们发明此次没有成绩了。可以看出在字符串中数组的索引不加单引号是没有成绩的,然而假如这类写法不是呈现在字符串傍边就会报错,而关于字符串中 {$arr[foo][3]}的解析就是依照非字符串的体例解析的。所以说在字符串傍边对数组只加花括号界定而不合错误索引加单引号的写法是毛病的。由于法式会把不加单引号的索引看成是常量来停止解析,这就发生了毛病。准确的写法应当是:
echo "无效的写法: {$arr['foo'][3]}";
出格提示一点:echo "This is $arr[d]";这类写法固然可以被法式解析,但这也仅限于数组是一维数组的情形。严谨的写法应当是:echo "This is {$arr['d']}";我的先生已经在这一点上和我争辩过,他说:既然后面一种写法能出了局,为何必定要用前面一种写法呢?那末,咱们再持续修正一下后面的代码
error_reporting(E_ALL);
$arr = array('a', 'b', 'c',
'd'=>array('e'=>'f')
);
echo "This is $arr[d][e]";
如许还可以被准确解析吗?我只想告知你,加花括号是严谨的需要的。固然,假如你不是我的先生那末我管不了那末多......

注重3:
error_reporting(E_ALL);
$arr = array('a', 'b', 'c', 'd');
echo "This is {$arr[2]}";
echo "This is {$arr['2']}";
履行下面的代码。了局是一样的,为何会如许呢?我只能告知你PHP是弱类型言语,至于甚么叫弱类型言语我就不在这里多说了。本人去Google一下吧。说了这么多,那末最能表现这些句律例则优势的详细使用在甚么中央呢?----SQL语句
// 示例一:
$SQL1 = "select * from table where id={$_GET['id']}";
// 示例二:
$SQL2 = "select * from table where id={$this->id}";
一下弹出N多页面!很明显,你的留言本并没有做好安全防范,被人用JS代码小小的耍了一下,我很同情你这个时候的感受,但是没有别的办法了,继续努力吧!
海妖 该用户已被删除
沙发
发表于 2015-2-4 02:58:56 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
兰色精灵 该用户已被删除
板凳
发表于 2015-2-5 17:01:11 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
再现理想 该用户已被删除
地板
发表于 2015-2-6 21:21:46 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
乐观 该用户已被删除
5#
发表于 2015-2-8 20:43:58 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
飘飘悠悠 该用户已被删除
6#
发表于 2015-2-26 08:24:55 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
若天明 该用户已被删除
7#
发表于 2015-3-2 22:10:09 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
小魔女 该用户已被删除
8#
发表于 2015-3-11 06:49:41 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
活着的死人 该用户已被删除
9#
发表于 2015-3-12 04:50:44 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
金色的骷髅 该用户已被删除
10#
发表于 2015-3-12 14:39:21 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
爱飞 该用户已被删除
11#
发表于 2015-3-17 07:10:09 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
因胸联盟 该用户已被删除
12#
发表于 2015-3-24 00:56:41 | 只看该作者
当然这种网站的会员费就几十块钱。
冷月葬花魂 该用户已被删除
13#
发表于 2015-3-27 23:11:36 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
小女巫 该用户已被删除
14#
发表于 2015-3-29 15:48:51 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
再见西城 该用户已被删除
15#
发表于 2015-4-12 13:49:35 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
谁可相欹 该用户已被删除
16#
发表于 2015-4-21 22:12:02 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
admin 该用户已被删除
17#
发表于 2015-4-24 04:58:21 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
飘灵儿 该用户已被删除
18#
发表于 2015-4-26 03:11:11 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
灵魂腐蚀 该用户已被删除
19#
发表于 2015-5-4 00:07:06 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
莫相离 该用户已被删除
20#
发表于 2015-6-16 14:37:56 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-9-21 01:41

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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