douhang5460 2012-09-06 09:46
浏览 213
已采纳

不能在PHP类上使用public修饰符

I have very strong basic in Java, and when comes to PHP I got some problem with the OOP.

Please take a look at this two classes below:

Contacts.php

<?php 

    public class Contacts {

    }
?>

UnitTest.php

<?php

    require_once 'PHPUnit/Framework.php';
    include 'Contacts.php';

    class UnitTest extends PHPUnit_Framework_TestCase {

        public function testRead() {
            $temp = new Contacts();
        }
    }
?>

When I trying to test the UnitTest.php using phpunit I got this error message:

PHP Parse error:  syntax error, unexpected T_PUBLIC in
    /home/crazenezz/Projects/PHP/Demo/Class/Contacts.php on line 3

And after trial and error I remove the public modifier of Contacts class, and the test become success without error.

Contacts.php (After remove the public modifier)

<?php 

    class Contacts {

    }
?>

Can anyone explain why in PHP I cannot use the public as modifier of a class?

  • 写回答

2条回答 默认 最新

  • dongxie8906 2012-09-06 09:48
    关注

    Because all classes are public in PHP. There's no such thing as a "private class".

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看