无聊翻了翻PHP手册,发现了几个函数,可以用于实现python的类似语法。

python中可以在类文件中加入以下语句用于单独执行一个类,这样对测试一个类十分方便

if __name__ == '__main__':

print "执行当前类"

PHP中也可以通过一些方法来实现这个功能,其中需要利用两个函数

getmyinode() 和fileinode()

这两个函数分别是获取当前执行脚本的inode索引,和获取指定文件的inode索引,所以通过一下脚本可以实现。

if(getmyinode() == fileinode(basename(__FILE__)))

{

echo "执行当前类";

} 这样如果是include进去的则不会执行,但是如果是直接运行当前类则会执行 if内的语句。

当然对于PHP做为WEB应用这样做其实也有一些缺陷,比如现在很多框架是不允许单独执行某个类文件的,文件头中加入了类似如下代码的限制语句来限制访问。

!defined('LESS_ROOT') && exit('access deined!'); 而且在web应用中访问这写类确实不应该返回调试信息,以免泄露一些敏感信息,或者一些未优化的测试代码被无聊人事利用

但是以上问题也可以通过定义DEBUG常量来解决,具体方案自己试试就可以了。

python的语法类似php_PHP实现类似python__mian__=__name__来单独执行类文件相关推荐

  1. python基础语法大全turtle_Python 基础语法-turtle篇-Go语言中文社区

    Python 基础语法-turtle篇 今天这节课主要讲了类的概念,并引出turtle中的函数和Turtle类. -创建一个Turtle类:brad=turtle.Turtle() -定义Turtle ...

  2. Python基础语法06--文件

    Python 文件I/O 本章只讲述所有基本的的I/O函数,更多函数请参考Python标准文档. 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个用逗号隔开的表达式.此函数把你 ...

  3. Python基本语法_异常处理详解

    目录 目录 异常 异常类型 异常处理 触发异常raise 传递异常 assert语句触发异常 捕获异常tryexceptelse 捕捉多个异常 tryfinally语句 自定义异常 withas触发异 ...

  4. Python 基础语法_Python脚本文件结构

    目录 目录 前言 软件环境 Python Script文件结构 导入模块的流程 Python的包package 最后 前言 Python基础语法这一章,主要记录了Python的文件结构.逻辑运算符.算 ...

  5. python语法基础学习-Python基础语法精心总结!看完都知道的可以往下继续学习了...

    原标题:Python基础语法精心总结!看完都知道的可以往下继续学习了 这应该是最详细的Python入门基础语法总结! 定义变量,使用变量 1. input 用户自己输入值 2. print 打印值 可 ...

  6. python基本语法规则-Python-基本语法元素

    从一个小代码示例里来讲解Python基本语法元素 可配合北京理工大学-嵩天老师-Python程序设计一起食用 本频道转载有,也可在个人空间中查看视频. #TempConvert.py TempStr ...

  7. python基础语法有哪些-python基本语法有哪些?

    python基本语法有哪些? python基本语法总结: 1.Python标识符 在 Python里,标识符有字母.数字.下划线组成. 在 Python中,所有标识符可以包括英文.数字以及下划线(_) ...

  8. Python 基础语法(二)

    2. 元组 tuple和list十分相似,但是tuple是不可变的,即不能修改tuple,元组通过圆括号中用逗号分割的项定义:支持索引和切片操作:可以使用 in 查看一个元素是否在tuple中.空元组 ...

  9. Python基本语法(基于3.x)

    Python基本语法(基于3.x) Python的两种运行模式: 命令行模式,运行python,然后在命令行中输入python命令 程序脚本, 在命令行中输入 ./hello.py运行 Python是 ...

最新文章

  1. centos7下安装intel Media Server Studio记录
  2. 阿里巴巴拿下奥运顶级赞助商
  3. POSIX标准总体分析
  4. centos6.5下使用yum完美搭建LNMP环境(php5.6)
  5. 分布式面试 - 为什么要进行系统拆分?
  6. xxd命令转换二进制十六进制文件
  7. Python 处理 PDF 的神器 -- PyMuPDF(上)
  8. 爬取东方财富的利润表数据记录
  9. html中表格背景颜色代码,html,表格背景颜色.doc
  10. Factorization Machines 论文翻译
  11. 第三十九期:1024特别版:向“程序媛们”致敬!
  12. typescript学习笔记1-tsconfig.json配置和变量类型声明
  13. 怎么设置wifi网页认证——时讯企业wifi
  14. Educoder -Java面向对象-Java语言之数组(第1关:数组的遍历:给小朋友分糖果)
  15. 基于MSP432控制的红外循迹爬坡小车设计报告
  16. LeetCode刷题之python解法(持续更新)
  17. Watering Grass——UVA10382
  18. 百度网盘下载速度慢问题解决方法
  19. 目标检测中的遮挡问题及优化
  20. 大数据入门没有头绪?这份总结的大数据学习路线希望你用得着

热门文章

  1. 寻找正反物质世界边境的长城---兵粒子
  2. GPU神经网络和JAVA神经网络速度对比
  3. php新浪api,php调用新浪短链接API的方法,php调用新浪api_PHP教程
  4. python pdf报告_Python实现html转换为pdf报告(生成pdf报告)功能示例
  5. java类的定义的实例_Java类的定义与实例化
  6. 【小项目关键技术五】控制全彩 WS2812 灯环/灯带
  7. 4.2 深层网络中的前向传播-深度学习-Stanford吴恩达教授
  8. modelsim加入xilinx ISE库的方法
  9. 程序的内存模型—new运算符
  10. Linux zip 加密压缩