php变量初始化,变量如何定义php

本文目录一览:

关于php当中static关键字,资料上说只能初始化一次。但是数组变量在定义时赋值会被下一次初始化覆盖?!

你定义了static 就是静态变量

但是静态变量的初始化只进行一次,而且是定义静态变量的时候初始化

static $a = array(1,2,3);

print_r($a);

static $a = array();

这样实际上是定义了两次静态变量,并初始化,实际做会执行其中一个

就是后面这个

上面的代码实际上会被编译器编程这样

?php

function f1(){

static $a = array();

print_r($a);

print_r($a);

}

function f2(){

static $a = array();

$a[] = 1;

$a[] = 2;

$a[] = 3;

print_r($a);

print_r($a);

}

php 变量怎么初始化

直接

$a = ”;

$b = 0;

$c = array();

就可以了,php在这方面比较省事,静态变量用define定义

如define(‘AAA’,0);

类对象变量用 var

如 var $aaa = 0;

PHP类中给成员属性初始化值为什么报错?

$var=$myvar 属性的值不能是变量!!!这是最基础的知识。

注意:成员属性不可以是带运算符的表达式、变量、方法或函数的调用。 如:

public $var3 = 1+2;

public $var4 = self::myStaticMethod();

public $var5 = $myVar;

正确定义方式:

public $var6 = 100; //普通数值(4个标量:整数、浮点数、布尔、字串)

public $var6 = myConstant; //常量

public $var7 = self::classConstant; //静态属性

public $var8 = array(true, false); //数组

php中下面$txt怎么初始化

默认情况下 PHP.ini内 error_reporting设置为:

error_reporting = E_ALL

这样如果有Notice也会显示出来,你可以

修改为

error_reporting = E_ALL ~E_NOTICE

来解决这个问题,但是不推荐,因为PHP开发建议有良好的习惯。

一般在我们要使用变量前,最好都赋一下值,也就是如 $txt=”;$i=0;之类的操作。

如果要判断数组是否存在这个键值也最好用 isset($ary[‘key’]) 进行判断一下,这样就能够根除这个错误提示,也是PHP的严谨开发者。

php中不同文件中定义的变量的用法

请看PHP手册18章,里面的内容你看了就明白。

第 18 章 类与对象(PHP 4)

目录

继承

构造函数

范围解析操作符(::)

parent

序列化对象 - 会话中的对象

魔术函数 __sleep 和 __wakeup

构造函数中的引用

对象的比较

类是变量与作用于这些变量的函数的集合。使用下面的语法定义一个类: 

?php

class Cart {

    var $items;  // 购物车中的物品

    // 将 $num 个 $artnr 物品加入购物车

    function add_item($artnr, $num) {

        $this-items[$artnr] += $num;

    }

    // 将 $num 个 $artnr 物品从购物车中取出

    function remove_item($artnr, $num) {

        if ($this-items[$artnr]  $num) {

            $this-items[$artnr] -= $num;

            return true;

        } elseif ($this-items[$artnr] == $num) {

            unset($this-items[$artnr]);

            return true;

        } else {

            return false;

        }

    }

}

上面的例子定义了一个 Cart 类,这个类由购物车中的商品构成的数组和两个用于从购物车中添加和删除商品的函数组成。 

警告

不能将一个类的定义分割到多个文件中。也不能将一个类的定义分割到多个 PHP 块中,除非该分割是在一个方法声明内部。以下用法将不起作用: 

?php

class test {

?

?php

    function test() {

        print ‘OK’;

    }

}

但是以下用法是可以的: 

?php

class test {

    function test() {

        ?

        ?php

        print ‘OK’;

    }

}

以下警告仅用于 PHP 4。 

小心

名称 stdClass 已经被 Zend 使用并保留。不能在 PHP 代码中定义名为 stdClass 的类。 

小心

函数名 __sleep 和 __wakeup 在 PHP 类中是魔术函数。除非想要与之联系的魔术功能,否则在任何类中都不能以此命名函数。 

小心

PHP 将所有以 __ 开头的函数名保留为魔术函数。除非想要使用一些见于文档中的魔术功能,否则建议不要在 PHP 中将函数名以 __ 开头。 

在 PHP 4 中,var 变量的值只能初始化为常量。用非常量值初始化变量,需要一个初始化函数,该函数在对象被创建时自动被调用。这样一个函数被称之为构造函数(见下面)。 

?php

/* PHP 4 中不能这样用 */

class Cart {

    var $todays_date = date(“Y-m-d”);

    var $name = $firstname;

    var $owner = ‘Fred ‘ . ‘Jones’;

    /* 不过包含有常量的数组可以 */

    var $items = array(“VCR”, “TV”);

}

/* 应该这样进行 */

class Cart {

    var $todays_date;

    var $name;

    var $owner;

    var $items = array(“VCR”, “TV”);

    function Cart() {

        $this-todays_date = date(“Y-m-d”);

        $this-name = $GLOBALS[‘firstname’];

        /* etc. . . */

    }

}

类也是一种类型,就是说,它们是实际变量的蓝图。必须用 new 运算符来创建相应类型的变量。 

?php

$cart = new Cart;

$cart-add_item(“10”, 1);

$another_cart = new Cart;

$another_cart-add_item(“0815”, 3);

上述代码创建了两个 Cart 类的对象 $cart 和 $another_cart,对象 $cart 的方法 add_item() 被调用时,添加了 1 件 10 号商品。对于对象 $another_cart,3 件 0815 号商品被添加到购物车中。 

$cart 和 $another_cart 都有方法 add_item(),remove_item() 和一个 items 变量。它们都是明显的函数和变量。可以把它们当作文件系统中的某些类似目录的东西来考虑。在文件系统中,可以拥有两个不同的 README.TXT 文件,只要不在相同的目录中。正如从为了根目录访问每个文件需要输入该文件的完整的路径名一样,必须指定需要调用的函数的完整名称:在 PHP 术语中,根目录将是全局名字空间,路径名符号将是 -。因而,名称 $cart-items 和 $another_cart-items 命名了两个不同的变量。注意变量名为 $cart-items,不是 $cart-$items,那是因为在 PHP 中一个变量名只有一个单独的美元符号。 

?php

// 正确,只有一个 $

$cart-items = array(“10” = 1);

// 不正确,因为 $cart-$items 变成了 $cart-“”

$cart-$items = array(“10” = 1);

// 正确,但可能不是想要的结果:

// $cart-$myvar 变成了 $cart-items

$myvar = ‘items’;

$cart-$myvar = array(“10” = 1);

在定义类的时候,无法得知将使什么名字的对象来访问:在编写 Cart 类时,并不知道之后对象的名称将会命名为 $cart 或者 $another_cart。因而你不能在类中使用 $cart-items。然而为了类定义的内部访问自身的函数和变量,可以使用伪变量 $this 来达到这个目的。$this 变量可以理解为“我自己的”或者“当前对象”。因而 ‘$this-items[$artnr] += $num’ 可以理解为“我自己的物品数组的 $artnr 计数器加 $num”或者“在当前对象的物品数组的 $artnr 计数器加 $num”。 

注意: 伪变量 $this 通常未定义,如果其所在的方法是被静态调用的话。但这不是个严格规定:如果一个方法被从另一个对象内静态调用的话,则 $this 会被定义。此时 $this 的值是那个发出调用的对象。用下例演示: 

?php

class A

{

    function foo()

    {

        if (isset($this)) {

            echo ‘$this is defined (‘;

            echo get_class($this);

            echo “)\n”;

        } else {

            echo “\$this is not defined.\n”;

        }

    }

}

class B

{

    function bar()

    {

        A::foo();

    }

}

$a = new A();

$a-foo();

A::foo();

$b = new B();

$b-bar();

B::bar();

上例将输出:

$this is defined (a)

$this is not defined.

$this is defined (b)

$this is not defined.

     

注意: 有一些不错的函数用来处理类和对象。应该关注一下类/对象函数。 

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/195310.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-02 20:34
下一篇 2024-12-02 20:34

相关推荐

  • PHP和Python哪个好找工作?

    PHP和Python都是非常流行的编程语言,它们被广泛应用于不同领域的开发中。但是,在考虑择业方向的时候,很多人都会有一个问题:PHP和Python哪个好找工作?这篇文章将从多个方…

    编程 2025-04-29
  • int类型变量的细节与注意事项

    本文将从 int 类型变量的定义、声明、初始化、范围、运算和类型转换等方面,对 int 类型变量进行详细阐述和讲解,帮助读者更好地掌握和应用 int 变量。 一、定义与声明 int…

    编程 2025-04-29
  • Python3定义函数参数类型

    Python是一门动态类型语言,不需要在定义变量时显示的指定变量类型,但是Python3中提供了函数参数类型的声明功能,在函数定义时明确定义参数类型。在函数的形参后面加上冒号(:)…

    编程 2025-04-29
  • Python定义函数判断奇偶数

    本文将从多个方面详细阐述Python定义函数判断奇偶数的方法,并提供完整的代码示例。 一、初步了解Python函数 在介绍Python如何定义函数判断奇偶数之前,我们先来了解一下P…

    编程 2025-04-29
  • Python input参数变量用法介绍

    本文将从多个方面对Python input括号里参数变量进行阐述与详解,并提供相应的代码示例。 一、基本介绍 Python input()函数用于获取用户输入。当程序运行到inpu…

    编程 2025-04-29
  • Python符号定义和使用方法

    本文将从多个方面介绍Python符号的定义和使用方法,涉及注释、变量、运算符、条件语句和循环等多个方面。 一、注释 1、单行注释 # 这是一条单行注释 2、多行注释 “”” 这是一…

    编程 2025-04-29
  • Python中的队列定义

    本篇文章旨在深入阐述Python中队列的定义及其应用,包括队列的定义、队列的类型、队列的操作以及队列的应用。同时,我们也会为您提供Python代码示例。 一、队列的定义 队列是一种…

    编程 2025-04-29
  • Python匿名变量的使用方法

    Python中的匿名变量是指使用“_”来代替变量名的特殊变量。这篇文章将从多个方面介绍匿名变量的使用方法。 一、作为占位符 匿名变量通常用作占位符,用于代替一个不需要使用的变量。例…

    编程 2025-04-29
  • PHP怎么接币

    想要在自己的网站或应用中接受比特币等加密货币的支付,就需要对该加密货币拥有一定的了解,并使用对应的API进行开发。本文将从多个方面详细阐述如何使用PHP接受加密货币的支付。 一、环…

    编程 2025-04-29
  • Python编程技巧:如何定义一个函数n!,并计算5!

    在这篇文章中,我们将研究如何使用Python编程语言定义一个能够计算阶乘的函数,并且演示如何使用该函数计算5!。 一、阶乘函数的定义 在Python中,我们可以使用一个简单的递归函…

    编程 2025-04-29

发表回复

登录后才能评论