当前位置:首页>开发>正文

简述用双引号和单引号定义字符串的区别(PHP编程) php中数组的定义有几种方法及区别

2023-04-15 03:42:16 互联网 未知 开发

 简述用双引号和单引号定义字符串的区别(PHP编程) php中数组的定义有几种方法及区别

简述用双引号和单引号定义字符串的区别(PHP编程)?

一般情况下两者是通用的。但双引号内部变量会解析,而单引号则不解析。
PHP允许我们在双引号串中直接包含字串变量。
而单引号串中的内容总被认为是普通字符,因此单引号中的内容不会被转义效率更高。
比如:
$str = hello world

echo "str is $str" //运行结果: str is hello world
echo str is $str //运行结果: str is $str

php中数组的定义有几种方法及区别

数组在PHP中包含2种表现,
一种是普通数组,定义方式有二种,
第一:
$a = array("aa","bb","cc")
第二:
$a[] = "aa"
$a[] = "bb"
$a[] = "cc"
一般用数组遍历的方式可以打印出所有数据,也可以使用数组的位标(从0开始计算)自定义打印,比如:
$a[0]的值就是aa,$a[1]的值是"bb"
数组遍历自己搜索下,也是2种方式
另外是别名数组,定义也是2种
第一:
$a = array("aa"=> "11","bb"=>"22")
第二:
$a["aa"] = "11"
$a["bb"] = "22"
使用数组的位标在别名数组就不行了,必须用别名
$a[0]就取不到值了,$a[“aa”]才能取到值"11"
数组遍历其中foreach有点不一样,自己搜索下

请教三种字符串输入的方法的比较和区别

gets(a)和scanf ("%[^ ]", a)的差别不大,都可以读入一行字符串,例如:
Hi Hello
就可以全部读入。
但scanf ("%s", a)是读到空格停止。用这一句来读上面的字符串,则只读入Hi。

那你说一下你发现的区别?

对了,scanf("%[^ ]s", a)和gets(a)还是有一点区别,sanf("%[^ ]s", a)在读到回车符( )的时候,把回车符留在输入缓冲区,也就是说,那个回车符并没有读入,所以后面用scanf("%[^ ]s", c)时,就直接又读到了之前留下的回车符,导致c中并没有存入任何数据(这一点可以通过如下手段证明:在scanf("%[^ ]s", a)的下面加上一个scanf ("%c", &d[0]),则程序运行正常了,说明scanf()读了以后,留下了回车符 ),但gets(a)是连回车符一起读入,输入缓冲区没有留下任何字符,所以后面不论再用scanf("%[^ ]s", c)还是gets(c),都不会出错。

谢谢你,我以前也没有注意到这个问题。。。

php 字符串比较,取不同

例子如下:
$a="abcde12"
$b="abcdf6"
echo "

"
var_dump(diffStr($a,$b))   
echo "
"
/*
*比较字符串不同的字符
*@参数:$str1:第一个字符串,$str2:第二个字符串
*@返回值:不同字符串的数组,
*/
function diffStr($str1,$str2){
    $sArr1 = str_split($str1)   
    $sArr2 = str_split($str2)   

    $num1  = count($sArr1)
    $num2  = count($sArr2)

    $aNew  = array()

    if($num1 > $num2){
        foreach($sArr1 as $k=>$val){
            if($num2 > $k && $val != $sArr2[$k]){
                $aNew[] = array(s1=>$val,s2=>$sArr2[$k])
            }elseif($num2 <= $k){             
                $aNew[] = array("s1"=>$val)
            }  
        }  
    }elseif($num1 < $num2){
        foreach($sArr2 as $k=>$val){
            if($num1 > $k && $val != $sArr1[$k]){
                $aNew[] = array(s1=>$sArr1[$k],s2=>$val)
            }elseif($num1 <= $k){
                $aNew[] = array("s2"=>$val)  
            }  
        }
    }elseif($num1 == $num2){
        foreach($sArr1 as $k=>$val){
            if($val != $sArr2[$k]){              
                $aNew[] = array(s1=>$val,s2=>$sArr2[$k])
            }  
        }  
    }

    return $aNew
}

PHP:给字符串定界是什么意思

php定界符("<<<<< 之后提供一个标识符,然后是字符串,然后是同样的标识符结束字符串。
结束标识符必须从行的第一列开始。同样,标识符也必须遵循 PHP
中其它任何标签的命名规则:只能包含字母数字下划线,而且必须以下划线或非数字字符开始。

/*******************

日期:2010-10-12

功能:定界符

*******************/

//定义字符串

$p="string(字符串):是一个字符串,PHP对字符串可以用三种方法定义单引号、双引号、定界符"

//定界符的使用方式

$string=<<










{$p}







EOT//警告:很重要的一点必须指出,结束标识符所在的行不能包含任何其它字符,可能除了一个分号()之外。这尤其意味着该标识符不能被缩
进,而且在分号之前和之后都不能有任何空格或制表符。同样重要的是要意识到在结束标识符之前的第一个字符必须是你的操作系统中定义的换行符。

echo $string

//注:单引号、双引号、php定界符("<<字符串,而定界符主要针对大段的html的,使用定界符,插标签的方式,不会打乱html代码的顺序,方便调试。不能用定界符语法初始化类成员。用其它字
符串语法替代。

?>

php字符串和数组有什么区别

php变量用于存储值,比如数字、文本字符串或数组。
一旦设置了某个变量,我们就可以在脚本中重复地使用它。
PHP 中的所有变量都是以 $ 符号开始的

数组能够在单独的变量名中存储一个或多个值

最新文章