">

Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Grundlagenstudiennotizen (12)

PHP-Grundlagenstudiennotizen (12)

WBOY
WBOYOriginal
2016-08-08 09:27:221059Durchsuche

php基本语法

<?<span>php
    </span><span>//</span><span>这个是php单行注释</span>
    <span>/*</span><span>
        这是多行注释
    </span><span>*/</span>
    <span>//</span><span>每条php语句使用英文分号结束&mdash;&mdash;必须使用!
    </span><span>//</span><span>php是一门区分大小写的语言&mdash;&mdash;但函数名除外
    </span><span>//</span><span>php的任何一个变量名都要使用一个$符开头。</span>
?>

变量和常量

php中,变量使用一个$符号开头。变量通常是直接赋值(此时如果是第一次赋值也就表示定义)。

常量:设定一个其值不会也不应该改变的数据标识符(数据名字),比如数学上的“pi”。

$pi = 3.14;        //这是变量

define(“PI”, 3.14);    //这是定义一个常量,名字为“PI”,值为3.14,这里也就类似赋值

常量定义的同时也就是赋值,且只是这一次性的!

常量和变量的区别:

  • 常量前面没有美元符号($)
  • 常量只能用 define() 函数定义,而不能通过赋值语句赋值
  • 常量可以不用理会变量范围的规则而在任何地方定义和访问
  • 常量一旦定义就不能被重新定义或者取消定义
  • 常量的值只能是标量(即整数,浮点数,字符串,布尔)

数据类型:

         基本类型(标量类型):

                   布尔类型(bool,boolean): 只有两个数据:true  false

                   字符类型(string):可以是单引号,也可以是双引号,还可以是“定界符”格式

                   整数类型(int,integer):

                            $v1 = 10;

                            $v2 = 012;                  //以0开始的数字表示“8进制”整数,这里相当于10进制的10

                            $v3 = 0x1F;                //以0x开始的数字表示16进制整数,这里相当于10进制的31

                   浮点类型(float,double)

                            $v4 = 12.34;

                            $v5 = 12.34e5;                   //12.34乘以10的5次方

         复合类型:

                   数组类型:

                   对象类型:

         特殊类型:

                   资源类型:表示某种“外界数据”的类型。

                   空类型(null):只有一个数据,就是“null”

3种字符串类型的区别:

$str1 = <span>"</span><span>abc\ndefg1</span><span>"</span>;    <span>//</span><span>双引号字符串中可以识别以下转义字符:\"  \n  \r  \t  \\  \$</span>
$str2 = <span>'</span><span>a\bc\ndefg2\\</span><span>'</span>;        <span>//</span><span>单引号字符串中只能识别以下转义字符:\'  \\。其中"\\"通常只用于最后一个字符
</span><span>//</span><span>下述为定界符字符串,其中的“ABCD”是随意命名的一个符号。字符串也就使用该符号结尾。
</span><span>//</span><span>定界符字符串中可以识别以下转义字符:\n  \r  \t  \\  \$</span>
$str3 = <<<<span>ABCD
abc\nde</span><span>"</span><span>f'g3</span>
<span>这叫做定界符字符串
这个范围的任何内容都是属于str3这个字符串的内容
换行也可以直接换
还可以写html和js等等。。。比如:
</span><hr />
<script><span>
    alert(</span><span>"</span><span>dddd</span><span>"</span><span>);
</span></script><span>
ABCD;
</span><span>//</span><span>特别注意:上述一行定界符字符串的结束符只能出现该名字本身和一个分号,不能有任何其他内容,比如空格,缩进(tab符)

</span><span>//</span><span>注意:在双引号字符串和定界符字符串中,可以直接识别变量并用该该变量的值来填充其内容。
</span><span>//</span><span>如果想要不被识别,则需要使用"\$"来将该$符号进行转义</span>
    $i = <span>5</span><span>;
    echo </span><span>"</span><span>$i=</span><span>"</span> . $i ;

传值方式:

         值传递(赋值传值):将一个变量的值拷贝一份,然后赋值给另一个变量,此时两个变量的值相等(相同),但两个变量是完全独立的没有关联的变量。

                   默认情况下,在php中,简单数据类型和数组以及空类型使用值传递。

Referenzübergabe (Wertübergabe): Kopieren Sie die durch eine Variable dargestellte „Adresse“ und weisen Sie sie einer anderen Variablen zu. Dies entspricht zwei Variablen, die gleichzeitig auf dieselbe Adresse zeigen (entsprechen) – dieser Adresse Es stellt auch den Speicherort der Daten dar. Wenn zu diesem Zeitpunkt die Werte der beiden Variablen gleich sind, bedeutet dies auch, dass sich die beiden Variablen tatsächlich auf ein gemeinsames Datenelement beziehen.

Standardmäßig werden in PHP Objekttypen und Ressourcentypen als Referenz übergeben.

Allerdings:

Wir können Referenzen auch verwenden, um die Daten zu übergeben, die standardmäßig per Zuweisung übergeben werden. Die Syntax lautet:

Variable 1 = & Variable 2;

Beispiel:

$v1 = 10;

$ v2 = & $ v1; // $ v1 und $ v2 repräsentieren zu diesem Zeitpunkt „einen Dateninhalt“

$v1 ;

echo $v2;

Vergleiche js:

In js gibt es nur die Standardwertübertragungsmethode und keine künstliche Einstellungsmethode

In js: Die standardmäßig übergebenen Typen sind: Zahlen, Zeichen, Boolean, zwei spezielle Typen

Die standardmäßigen Referenzwerttypen sind: Array, Objekt

Betreiber:

l Arithmetischer Operator: - * / % --

    Das Zeichen
  • führt nur „arithmetische Operationen“ aus und hat keine Doppelbedeutung.
  • --Die Symbolbedeutung und -verwendung sind genau die gleichen wie bei js.

l wird vor die Variable geschrieben, dann: zuerst hinzufügen (Selbstdekrementierung) und dann andere Operationen ausführen (z. B. Zuweisung)

l wird nach der Variablen geschrieben, dann: Führen Sie zuerst andere Operationen (z. B. Zuweisungen) aus und addieren (subtrahieren) Sie sich dann selbst

  • Das %-Zeichen führt nur die UND-Operation für Ganzzahlen aus. Wenn es sich nicht um eine Ganzzahl handelt, wird sie zuerst automatisch in eine Ganzzahl umgewandelt und dann wird der Rest genommen

l Vergleichsoperatoren: == != > >= <= ===(alle gleich) !==(nicht alle gleich)

  • == bedeutet normalerweise „Fuzzy-Gleichheit“, === bedeutet exakte Gleichheit (nur wenn Datentyp und Datenwert gleich sind)
  • Informationen zu verschiedenen Situationen der Fuzzy-Gleichheit finden Sie im Handbuch: Anhang> Typvergleichstabelle

l Bedingungsoperator: (expr1) ? (expr2) : (expr3), Beispiel:

  • Bedeutung: Bewerten Sie den Ausdruck exp1. Wenn das Beurteilungsergebnis wahr ist, ist das Ergebnis des gesamten Ausdrucks exp2, andernfalls ist das Ergebnis des gesamten Ausdrucks exp3
  • $v1 = $fs>60 ? „Bestanden“ : „Nachholprüfung“ //Dann hat v1 zwei Situationen entsprechend dem Wert von fs

  • Ergänzendes Wissen: Zu den unären Operatoren gehören: !, , --, ~, binäre Operatoren sind die am häufigsten verwendeten Operatoren, und dies ist der ternäre Operator.
  • l Logischer Operator: &&(AND) ||(OR) ! (NOT)

    • Logisches UND &&: Nur wenn beide Daten wahr sind, ist das Ergebnis wahr
    • Logisches ODER||: Solange ein Datum wahr ist, ist das Ergebnis wahr
    • Logische Verneinung! : Nehmen Sie den entgegengesetzten Wert logischer Daten.

    l String-Operator: . (d. h. englischer Punkt) .= (d. h. ähnlich wie „=")

    • .= ist nur eine „Abkürzung“, $v1 = $v1 è $v1 .= „abc“;

    l Bitweise Operatoren: &(AND) |(OR) ~(NOT) ^(XOR) <<(Linksverschiebung) >>(Rechtsverschiebung)

    • Bitweise Operatoren werden alle im binären Zahlensystem ausgeführt.
    • Bitweises UND&: Das Ergebnis ist nur dann 1, wenn die Zahlen auf den beiden entsprechenden Bits beide 1 sind
    • Bitweises ODER|: Solange eine Zahl im entsprechenden Bit 1 ist, ist das Ergebnis 1
    • Bitweises NICHT~: Negation, das heißt, 1 wird zu 0, 0 wird zu 1
    • Bitweises XOR^: Wenn die Zahlen auf den beiden entsprechenden Bits unterschiedlich sind, ist das Ergebnis 1

    l Zuweisungsoperator: = = -= *= /= %= .=

    Operatorprioritätsproblem: im Grunde dasselbe wie js.

    Datentypkonvertierung

    在js中,基本没有数据类型转换的概念,实际的转换都是“自动发生”的——默认转换。

             js中有两个“类似”类型转换的函数: parseInt(….)  parseFloat(…)

    php中,既有默认转换,也有强制转换。

    默认转换举例:

    $v1 = <span>10</span> - “<span>3</span>”;        <span>//</span><span>7;</span>
        $v2 = <span>10</span> + “<span>3</span>”;        <span>//</span><span>13;</span>
        $v3 = <span>10</span> + “3abc”;    <span>//</span><span>13;</span>
        $v4 = <span>10</span> + “<span>3</span>.5abc”;    <span>//</span><span>13.5;</span>
        $v5 = <span>10</span> + “abc3”;    <span>//</span><span>10;</span>
        $v5 = <span>10</span> + “abc”;    <span>//</span><span>10</span>
        $v5 = “<span>10</span>” + “abc”;    <span>//</span><span>10</span>
        $v5 = “10ABC” + “5abc”;    <span>//</span><span>15</span>
        $v5 = “ABC10” + “abc5”;    <span>//</span><span>0</span>
        $v5 = “ABC” + “abc”;    <span>//</span><span>0</span>

    ………………….凡是使用算术运算符进行运算,都会“看成”数字,如果实在转不成一个数字,也会当做0来进行计算。

    强制转换:

    <span>语法: (要转成的目标类型)数据;
        举例:
        $v1 </span>= (<span>int</span>) “<span>3</span>.5abc”;    <span>//</span><span>3;int类型</span>
        $v1 = (<span>float</span>) “<span>3</span>.5abc”;    <span>//</span><span>3.5;    </span><span>//</span><span>这里其实是float类型</span>
        $v1 = (<span>string</span>) <span>3</span>;        <span>//</span><span>”3”;</span>
        $v1 = (<span>bool</span>) “<span>3.5</span>”;        <span>//</span><span>true</span>

    ——特别推荐将一个数据转换为bool类型的时候:查手册:附录〉类型比较表〉对变量 $x 进行比较 〉 if($x)列

    以上就介绍了php基础学习笔记(12),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn