仓酷云
标题:
PHP编程:PHP教程:网站开辟编程中的特别符号处置...
[打印本页]
作者:
第二个灵魂
时间:
2015-2-3 23:44
标题:
PHP编程:PHP教程:网站开辟编程中的特别符号处置...
PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了。 </p> 1 PHP中单引号与双引号的区分
在PHP中,凡是一个字符串被界说在一对引号中,如:
'I am a string in single quotes'
"I am a string in double quotes"
PHP语法剖析器是用成对的引号来判别一个字符串的。因而,一切字符串必需利用统一种单或双
引号来界说入手下手和停止。例如,上面的字串界说是不正当的:
"I am not a valid string since I have unmatching quote marks'
'Me neither!"
界说字符串时,只要一种引号被视为界说符,即单引号或双引号。因而,假如一个字符串由双引
号入手下手,那末只要双引号被剖析器解析。如许,你就能够在双引号串中包括任何其他字符,乃至单引
号。上面的引号串都是正当的:
$s = "I am a 'single quote string' inside a double quote string";
$s = 'I am a "double quote string" inside a single quote string';
当PHP碰到与串的开首绝对应的引号时,便以为已到了字符串尾部,因而:
"Why doesn't "this" work?"
实践上被PHP语法剖析器分红三个局部:
"Why doesn't "——包括一个单引号的双引号串
this——过剩的字符,剖析器没法处置
" work?" ——通俗字符串
下面的这个例子妄图在双引号串中包括双引号,而剖析器在碰到第二个双引号时便以为字符串结
束了。要到达包括引号的目标,必需剖析器在碰到串内通俗引号的时分疏忽它的原意,咱们在引号的
后面加上一个反斜杠来告知PHP:这个引号是字符串的一局部,准确的暗示办法是如许:
"Why doesn't \"that\" work?"
在英文字符串中一个罕见的成绩是撇号'的利用,由于它就是一个单引号,而在英文串中非常罕见
(英文一切格)。你必需当心处置这些字符:
'You\'d better escape your apostrophes'
可以看到反斜杠在字符串中有他的特别寄义,当咱们需求在字符串中包括反斜杠自己时,需求在
该符号后面多加一个反斜杠。例如:
$file = "c:\windows\system.ini";
echo $file; // 打印了局为: c:windowssystem.ini
$file = "c:\\windows\\system.ini";
echo $file; // 打印了局为: c:\windows\system.ini
另外一种字符串界说体例,可以消弭特别字符的懊恼,并且便于援用较长的文本。该字符串界说方
法以<<<符号紧跟一个自界说字符串开首,最初一行以该自界说字符串停止,而且必需顶格。
2、字串的毗连
字串可使用字串联接符(.)来毗连,如:
$first_name = 'Charlie';
$last_name = 'Brown';
$full_name = $first_name . ' ' . $last_name;
罕见的用处是创立大块的HTML字串代码,赋值号 (=) 毗连符 (.) 可以被简写兼并为 (.=) 符
号,如:
$html = '<table>';
$html .= '<tr><td>number</td><td>square</td></tr>';
for ( $i=0 ; $i<10 ; $i++) {
$square = $i * $i;
$html .= '<tr><td>' . $i . '</td><td>' . $square . '</td></tr>';
}
$html .= '</table>';
3、在字串中利用变量
这个功效让你不必利用毗连符号来粘和大批的复杂字符串。PHP答应咱们在双引号串中直接包括字
串变量,咱们可以发明上面的两个字串的处置了局是不异的。
$full_name = $first_name . ' ' . $last_name;
$full_name = "$first_name $last_name";
单引号串和双引号串在PHP中的处置是不不异的。双引号串中的内容可以被注释并且交换,而单引
号串中的内容总被以为是通俗字符。例如:
$foo = 2;
echo "foo is $foo"; // 打印了局: foo is 2
echo 'foo is $foo'; // 打印了局: foo is $foo
echo "foo is $foo\n"; // 打印了局: foo is 2 (同时换行)
echo 'foo is $foo\n'; // 打印了局: foo is $foo\n
正如你所看到的,在单引号串中乃至反斜杠也得到了他的扩大寄义(除拔出反斜杠\\和拔出单
2 PHP中单引号与双引号的区分 引号\')。所以,当你想在字串中停止变量代换和包括\n(换行符)等本义序列时,你应当利用双引
号。单引号串可以用在其他任何中央,剧本中利用单引号串处置速度会更快些,由于PHP语法剖析器对
单引号串的处置体例对照纯真,而双引号的处置因为串外部也需求解析,因而更庞杂些,所以处置速
度略慢。
在字符串中援用庞杂的变量组应时,能够会发生一些成绩,上面的代码会正常任务:
echo "value = $foo";
echo "value = $a[$i]";
而上面的代码却不克不及失掉咱们但愿的了局:
echo "value = $a[$i][$j]"; //咱们但愿打印二维数组$a的某个元素。
为防止这些字串利用中的潜伏成绩,咱们凡是把庞杂的变量从字串平分分开来,就像如许:
echo 'value = ' . $a[$i][$j];
还有一种举措是将庞杂变量用花括号括起来,语法剖析器就可以准确识别了:
echo "value = {$a[$i][$j]}" //打印二维数组$a的某个元素
如许,又呈现新成绩了。当咱们想在字串中援用花括号字符自己时,就要记得利用本义符了:
$var = 3;
echo "value = {$var}"; // 打印了局 "value = 3"
echo "value = \{$var}"; // 打印了局 "value = {3}"
3、斜杠和SQL语句
生成HTML代码或SQL查询语句是编写PHP法式时常常碰到并且是件风趣的工作。为何这么说呢, 由于这触及到生成别的一品种型的代码,你必需细心地思索和遵守这类代码所请求的编写语法和划定规矩。
咱们来看如许一个例子,假设你想查询数据库中名字是“O'Keefe”的用户,凡是SQL语句的模式是如许的:
select * from users where last_name = 'O\'Keefe'
请注重SQL语句这个英文一切格(撇号)需利用反斜杠本义。PHP专门供应了一些函数来处置如许的情形,函数AddSlashes($str)的用处就是主动在字串中对引号字符拔出反斜杠本义符:
$last_name = "O'Keefe";
$sql = "select * from users where last_name = '" . addslashes($last_name) . "'";
在这个例子中,你还要在last_name字串里面括上单引号(SQL语法请求),因为这里利用的是双引号串,所以对这对单引号就不必利用本义了。上面的这个语句是利用单引号串的等价模式:
$sql = 'select * from users where last_name = \'' . addslashes($last_name) . '\'';
任什么时候候你要在数据库中写入字串,你都必需确保外面的引号准确利用了本义符号,这是良多PHP 初学者常犯的毛病。
4、双引号和HTML
与SQL语句分歧,在尺度HTML言语中双引号常被用来暗示字串(如今良多阅读用具备较强的容错功效,答应在HTML顶用单引号乃至不必引号暗示字符串),例如:
$html = '<a href="'.$url.'">'.$link.'</a>';
$html = "<a href=\"$url\">$link</a>";
HTML言语不撑持反斜杠本义,这一点在咱们利用表单的hidden inputs来传输数据的时分就会有所体味了。设置hidden inputs的值的最好举措,是利用htmlspecialchars()函数来编码。上面的语句可以正常传输一个能够包括双引号的数据:
<input type=hidden name=var value="<?php echo htmlspecialchars($var) ?>">
1、引号界说字符串。要到达包括引号的目标, 必需剖析器在碰到串内通俗引号的时分疏忽它的原意,咱们在引号的 后面加上一个反斜杠来告知PHP:这个引号是字符串的一局部,准确的暗示办法是如许:单引号串可以用在其他任何中央,剧本中利用单引号串处置速度会更快些,由于PHP语法剖析器对 单引号串的处置体例对照纯真,而双引号的处置因为串外部也需求解析,因而更庞杂些,所以处置速 度略慢。
这个...双引号本义,单引号不本义
如:/r/n是换行,然而假如你用单引号写入文件,不会是换行,而是一个字符,假如用双引号写入文件,就是换行.PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。
作者:
透明
时间:
2015-2-4 06:26
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者:
小女巫
时间:
2015-2-9 17:36
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
作者:
深爱那片海
时间:
2015-2-17 08:11
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
作者:
再见西城
时间:
2015-2-18 23:09
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
作者:
飘灵儿
时间:
2015-2-26 20:34
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者:
活着的死人
时间:
2015-2-27 14:11
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
作者:
简单生活
时间:
2015-3-1 18:01
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
作者:
愤怒的大鸟
时间:
2015-3-5 13:32
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者:
乐观
时间:
2015-3-11 13:53
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
作者:
不帅
时间:
2015-3-18 15:47
刚开始安装php的时候,我图了个省事,把php的扩展全都打开啦(就是把php.ini 那一片 extension 前面的冒号全去掉啦),这样自然有好处,以后不用再需要什么功能再来打开。
作者:
飘飘悠悠
时间:
2015-3-23 07:56
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者:
灵魂腐蚀
时间:
2015-3-27 19:09
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者:
第二个灵魂
时间:
2015-3-31 18:25
爱上php,他也会爱上你。
作者:
小妖女
时间:
2015-4-1 08:45
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年 具体的记不清啦,囧。
作者:
若相依
时间:
2015-4-5 10:52
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者:
因胸联盟
时间:
2015-4-7 14:56
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者:
变相怪杰
时间:
2015-4-9 09:15
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者:
再现理想
时间:
2015-4-10 17:11
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox 支持的不是很好,所以能少用还是少用的好。
作者:
若天明
时间:
2015-4-21 15:43
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
欢迎光临 仓酷云 (http://ckuyun.com/)
Powered by Discuz! X3.2