php中单引号与双引号的区别

 更新时间:2016年11月25日 17:40  点击:2192

php教程中单引号与双引号的区别

引号中,任何变量($var)、特殊转义字符(如“t r n”等)不会被解析,因此php的解析速度更快,转义字符仅仅支持“’”和“”这样对单引号和反斜杠本身的转义;

在字串中使用变量

  这个功能让你无须使用连接符号来粘和大量的简单字符串。php允许我们在双引号串中直接包含字
串变量,我们可以发现下面的两个字串的处理结果是相同的。

$full_name = $first_name . ' ' . $last_name;
$full_name = "$first_name $last_name";

  单引号串和双引号串在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}"


$foo = 2;
echo "foo is $foo"; // 打印结果: foo is 2
echo 'foo is $foo'; // 打印结果: foo is $foo
echo "foo is $foon"; // 打印结果: foo is 2 (同时换行)
echo 'foo is $foon'; // 打印结果: foo is $foon

 

双引号中,变量($var)值会代入字符串中,特殊转义字符也会被解析成特定的单个字符,还有一些专门针对上述两项特性的特殊功能性转义,例如“$”和“{$array[‘key’]}。这样虽然程序编写更加方便,但同时php的解析也很慢;


引号内部的变量不会执行
双引号会执行


$name = 'hello';
echo "the $name";

会输出 the hello

而如果是单引号

$name = 'hello';
echo 'the $name';

会输出 the $name

主要区别就是这个,其他的无所谓,看你自己喜欢了
推荐是保持一致,如用单引号其他地方保持一致就可以了,双亦然

 

下面中要在html 中调用就行了

<script src=”fckeditor/fckeditor.js”></script>
<script type=”text/网页特效”>
function showfck(){
var ofckeditor = new fckeditor('content') ;
ofckeditor.basepath = ‘fckeditor/' ;
ofckeditor.toolbarset = ‘basic' ;
ofckeditor.width = ‘100%' ;
ofckeditor.height = ‘200′ ;
ofckeditor.value = ” ;
ofckeditor.replacetextarea() ;
document.getelementbyidx(”btnshow”).disabled = ‘true';
document.getelementbyidx(”btnshow”).style.display = ‘none';
}
</script>
<textarea name=”content”></textarea>
<input id=btnshow style=”display:inline” type=button onclick=”showfck()”>

今天我们要讲了是关于 php教程 如何调用代码如

<?
include("../editor/fckeditor.php");

$ofckeditor = new fckeditor('fckeditor1') ;
$ofckeditor->basepath = '../editor/';
$ofckeditor->value = '';
$ofckeditor->width = '100%' ;
$ofckeditor->height = '360' ;
$ofckeditor->create() ;

?>

如果php要获取值就直接

$_post'fckeditor1'];


就可以了。

更多详细内容请查看:http://www.111cn.net/wy/dreamweaver/34997.htm

方法1 : 据官方手册上描述若php教程的safe mode相关的设置过于苛刻,就会出现这样的情形:尽管文件真实存在也被误报,认为文件不存在。
由于服务器端的php.ini我们无法操纵,当用ini_set()也关闭不了safe mode模式,我们只有退而求其次,找一个更可靠、安全的检测方法来检测文件是否存在。我们可以借助 $_server['document_root'] 来加以实现。$_server['document_root'] 返回的是网站的根目录,该目录的最后一个子目录不包含目录标志符号“/”,如:

d:/www/htdocs
有了根目录,再加上需要检测的文件的路径,我们将得到一个绝对的路径,php就可以顺利使用file_exists()函数对之进行检测。上述代码我们只需要更改第一行为(注意,我们在config.php之前加上了符号“/”):

$file=$_server['document_root']."/config.php";
如此,代码的执行就很可信,不会出现预期以外的结果。

以上方法同样适用于目录(is_dir())或文件(is_file())的相关检测函数,能够检测出被安全保护的目录或文件是否存在。

最后顺便提一下:这类被php特殊设置所保护的文件在引用(include和require)时不必加上$_server['document_root']路径,因为,根据php说明文档,它们是允许引用的。

 

      方法2:本人的情况是因为文件在windows和linux之间来回的移动。造成linux下文件和目录的访问权限被改变,导致出文件除拥有者外其他均无访问权限。使用chmod -r 755 xxx/* 解决了问题。

 

ctrl+y查找:disable_functions

  找到后在=后面添加

  (这里都是禁止在php教程里面执行的函数)代码:

  复制内容到剪贴板

  exec,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,

  symlink,link,leak,fsockopen,proc_open,popepassthru,chroot,scandir,

  chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,popen

  上面内容请放到一行。因为保持帖子的整体效果作了换行

  一般后台只用加:

  复制内容到剪贴板

  disable_functions = system,passthru,shell_exec,com,exec,shell

  查找:display_errors

  如果是on的话改成off

  查找:magic_quotes_gpc

  如果是off的话改成on

  查找:register_globals

  如果是on的话改成off

  查找:open_basedir

  后面增加

  /www/:/tmp/

  这里是限制php可以访问的目录,后面一定要加上/,否则如果有/wwwabcd这个目录也会被访问得到

  多个目录用英文:分隔。如果不添加/tmp/的话discuz!的上传功能就无法使用

  注意:以上内容在php.ini的开头会有相关设置的提示,请按ctrl+x查找下一个,不要直接在上面修改

  ------------------------------

  对php.ini优化

  gd库的支持

  ;extension=php_gd2.dll

  将前面的冒号去掉,

  output_buffering = off

  输出缓存允许你甚至在输出正文内容之后发送 header(标头,包括cookies)行 其代价是输出层减慢一点点速度。你可以使用输出缓存在运行时打开输出缓存, 或者在这里将指示设为 on 而使得所有文件的输出缓存打开。

  output_handler = ; 你可以重定向你的脚本的所有输出到一个函数,

  那样做可能对处理或以日志记录它有用。

  例如若你将这个output_handler 设为ob_gzhandler, 则输出会被透明地为支持gzip或deflate编码的浏览器压缩。

  设一个输出处理器自动地打开输出缓冲。

  找到这个

  output_buffering = off

  修改为

  on

  注意,不要设置数值,只需要设置为on即可。

  相应的,你还可以在你的discuz后台,打开gzip支持,也是优化的一项内容。

  有些朋友为了安全,还启用了php的安全模式,这个也是一办法

  另外有些朋友需要使用全局变量和magic,这是一些php程序的必备条件,discuz2.0也需要

  可以打开,不过安全性能将降低,方法很简单。

  register_globals = off ;

  将其修改为on即可.

  一些朋友经常反映无法上传较大的文件或者后台备份数据经常超时

  max_execution_time = 30 ; 这个是每个脚本运行的最长时间,可以自己修改加长,单位秒

  max_input_time = 60 ; 这是每个脚本可以消耗的时间,单位也是秒

  memory_limit = 8m ; 这个是脚本运行最大消耗的内存,也可以自己加大

  upload_max_filesize = 2m ; 上载文件的最大许可大小 ,自己改吧,一些图片论坛需要这个更大的值

  如果:

  php报错显示php has encountered an access violation at xxxxxx解决办法

  很多人说,是php版本的问题,其实不然,可以从四个地方来看这个问题

  1,是否zend所需的dll文件所在目录给的权限不够,必须有读取和运行的权限

  2,是否使用的2003,设置过应用池,比如池中限制了什么什么,调整一下再试试看,是否好了,呵呵

  3,php.ini有两个地方没有设置,而且一些程序必须用到的

  将;upload_tmp_dir该行的注释符,使该行在php.ini文档中起作用。

  upload_tmp_dir是用来定义上传文件存放的临时路径,在这里你还可以给其定义一个绝对路径,

  例如:upload_tmp_dir = d:upload  当然,此时你的d:upload目录必须有读写权限。

  这里我设置为

  upload_tmp_dir = c:temp

  出现这样的错误语句一般是因为你的php.ini中关于session.save_path一项没有设置好,

  解决的方法是将session.save_path和session.cookie_path 设置置为

  session.save_path = c:temp

  session.cookie_path = c:temp(我没有修改这项,我发现修改后的验证玛不能用)

  然后在c:目录下建立一个temp目录

 

常量在使用前必须要定义,否则程序执行会出错。在php教程中使用define()函数来定义常量。

1、语法格式:define("常量名称","常量的值");

例如:define("php360","完美的php");


下面还是来一个范例吧:
 

define() 函数定义一个常量。

常量类似变量,不同之处在于:

在设定以后,常量的值无法更改
常量名不需要开头的美元符号 ($)
作用域不影响对常量的访问
常量值只能是字符串或数字
语法
define(name,value,case_insensitive)参数 描述
name 必需。规定常量的名称。
value 必需。规定常量的值。
case_insensitive 必需。规定常量的名称是否对大小写敏感。

若设置为 true,则对大小写不敏感。默认是 false(大小写敏感)。
*/


define("greeting","hello world!");
echo constant("greeting");


/*
运行这段代码,就会在浏览器输出 hello world! 的结果。

2、常量命名的规则:以字母或下划线开始,后面可以跟任何字母、数字、下划线。

3、常量与变量的不同之处:

(1)常量前面没有$符号,而变量必须以$符号开头。

(2)常量只能用define()函数来定义,不能通过赋值语句定义。

(3)常量可以不用理会变量范围的规则,可以在任何地方定义和访问。

(4)常量一旦被定义就不能够重新定义或取消定义,并且值不能发生改变,而变量的值可以随时发生改变。

(5)常量的值只能是标量,即整型、浮点型、字符串3种类型*/

[!--infotagslink--]

相关文章

  • mysql_connect与mysql_pconnect的区别详解

    在mysql中我们会看到有两种常用的数据库连接模式,一种是长久连接,另一各是页面访问完之后就断了连接,下面我来分别介绍mysql_connect与mysql_pconnect的区别,有需要了解...2016-11-25
  • C#中out与ref的区别实例解析

    这篇文章主要介绍了C#中out与ref的区别实例解析,对C#初学者有不错的学习借鉴价值,需要的朋友可以参考下...2020-06-25
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • 谈谈Jquery中的children find 的区别有哪些

    精华:find方法能找子孙,children方法只能找儿子一、Jquery中children 语法.children(selector) 说明expr是表达式,可选参数,所有选择器中的表达式都可以用在这,比如按标签名"div",按类名".class",按序号":first"等等,如果表...2015-10-21
  • PS中像素大小、文档大小的区别

    在PS中像素大小、文档大小有什么区别呢,这个估计很多初学者不清楚,下面我来给大家讲解一下,希望对你有帮助。 1、像素大小 通常用于显示屏显示的图片大小的调整。菜...2016-09-14
  • PostgreSQL 中的单引号与双引号用法说明

    这篇文章主要介绍了PostgreSQL 中的单引号与双引号用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-01
  • C#中sleep和wait的区别分析

    这篇文章主要介绍了C#中sleep和wait的区别分析,有助于深入理解C#中线程的原理与使用技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
  • uniapp和vue的区别详解

    这篇文章主要介绍了uniapp和vue的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-10-19
  • list与push的区别

    //函数list while(list($id,$username,$password,$add_date,$mdn,$mobile,$channel,$last_date,$area,$nickname) = mysql_fetch_array($rs)){ ...2016-11-25
  • input框中的name和id的区别

    这篇文章主要介绍了input框中的name和id的区别介绍,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2016-11-22
  • pgsql 解决包含有单引号的字符串操作

    这篇文章主要介绍了pgsql 解决包含有单引号的字符串操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-01
  • php switch 与 if else 区别

    在php中switch是选择,if else也有同理,但是它们肯定是有区别的,那么我们来看看它们两者的区别在哪里呢,下面先看switch case语句吧。 switch($id){ case 1: ...2016-11-25
  • PHP中file_exists与is_file,is_dir的区别

    在php中file_exists与is_file,is_dir都可以用来检测目录或文件是否存在了,那么它们三者的具体区别在哪里呢,下面我们一起来看看吧。 很显然file_exists是受了asp...2016-11-25
  • 浅谈C++中字符串输入get与getline的区别

    这篇文章主要介绍了C++中字符串输入get与getline的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
  • php mysql localhost,127.0.0.1和ip区别

    一家之言:localhost与127.0.0.1的区别 localhost与127.0.0.1的区别是什么?相信有人会说是本地ip,曾有人说,用127.0.0.1比localhost好,可以减少一次解析。看来这个入门问题还有人不清楚,其实这两者是有区别的。no1:localhos...2014-05-31
  • C#中类与接口的区别个人总结

    这篇文章主要介绍了C#中类与接口的区别个人总结,本文讲解了类与接口的区别、接口的用处主要体现在下面几个方面、一些接口的疑问等内容,需要的朋友可以参考下...2020-06-25
  • 详解CSS3中nth-child与nth-of-type的区别

    这篇文章详细解析了CSS3中nth-child与nth-of-type的区别,有兴趣的同学可以参考一下 CSS3中nth-child与nth-of-type的区别其实很简单::nth-of-type为什么要叫:nth-of...2017-01-22
  • include包含头文件的语句中,双引号和尖括号的区别(详解)

    下面小编就为大家带来一篇include包含头文件的语句中,双引号和尖括号的区别(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-04-25
  • 英语单词state与status的区别

    state倾向于condition,是一种延续性的状态。status常用于描述一个过程中的某阶段(phase),类似于C语言中枚举型变量某一个固定的值,这个值属于一个已知的集合。这篇文章主要介绍了英语单词state与status的区别,需要的朋友可以参考下...2020-06-25
  • php echo print print_r三者区别分析

    php教程 echo print print_r三者区别分析 echo是PHP语句, print和print_r是函数,语句没有返回值,函数可以有返回值(即便没有用) print() 只能打印出简单类型变量的...2016-11-25