![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php7
su_yi_song
为了计算机及你
展开
-
php7:面向过程式编程
在接触面向对象(OOP)编程之前,最基础的编程就是面向过程式编程。就我而言,可以将面向过程编程看作生活的问题处理,按照发现问题-探索问题-解决问题流水线方式解决问题。这里描述几个面向过程的关键问题:开发函数提示数据类型设置函数返回值的数据类型迭代器生成器构造迭代器开发函数首先介绍函数的基本结构function关键字+函数名+参数+代码体+返回值function 函数名($参数){ /* *执行代码 */ return $result; //返回结果}针对函数的类型原创 2020-08-18 17:02:31 · 454 阅读 · 0 评论 -
php7:递归式目录迭代器
PHP7中提供了一个关键的递归式目录迭代器RecursiveDirectoryIterator。使用该迭代器可以递归式遍历指定路径下的所有文件。先看一下该迭代器的构造器:public RecursiveDirectoryIterator::__construct ( string $path[, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO] )该构造器的核心原创 2020-08-06 09:43:44 · 430 阅读 · 1 评论 -
php7:大数据文件提取 | 将电子表格上传到数据库中
谈到这两个功能的共通处就是都需要对大数据文件进行处理。大数据文件处理思想: php本身存在几个文件读取方法如file_get_content()和file()方法,的确这两个方法的处理速度速度快且容易使用,但由于php对内存的限制(php.ini memeory_limit=128M)而且一次性读取整个文件的可读性差(等待时间过长),因此需要一种大数据文件处理方法。php处理大数据文件的机制就是使用splfileObject类和yield生成器来定量一行行提取。重点:在上一次谈php读取文件IP地址原创 2020-07-27 20:22:21 · 236 阅读 · 0 评论 -
php7:提取文本文件中IP地址
之所以提到这个功能,是因为要介绍一下php7相对于php5的性能提升。在本次功能中需要调用匿名函数,而匿名函数的一个主要问题就是使用$this来表示任意对象,在php5中使用bindTo()方法来解决,在php7中使用call()方法来解决,方法的转变同时显示着php7性能的提升。下面直接看下功能吧!提取文本文件中IP地址思想:首先我们需要一个php文件处理类来提取文件内容,为了可以对大数据文件的提取,我们采用生成器yield来输出每行数据,这时文件处理类决定了是SplFileObject类,这个类对原创 2020-07-27 18:21:18 · 677 阅读 · 0 评论 -
php5与php7的区别
本博客实时更新在 PHP 5 中,赋值操作右侧的表达式会按照从右至左的次序被解析。在 PHP 7 中,解析的次序始终是从左至右。原创 2020-07-18 10:56:13 · 291 阅读 · 0 评论 -
php7:魔术方法__call与__callStatic(内包含AST)
注:博客参考https://www.cnblogs.com/TigerYangWTH/p/5907191.html, 本博客纯属个人观点,有错误欢迎纠正首先我谈一下魔术方法,魔术方法就是一些用于特定功能、php自带的方法,在某些条件满足的情况下魔术方法就会被调用以处理问题。于是谈魔术方法就离不开两个方面:触发时机功能__call与__callStatic魔术方法__call:触发时机:分为类外调用和类内调用两种情况。当在类内部调用不存在的方法时,无论时对象还是类本身调用都会触发__cal原创 2020-07-18 10:47:59 · 433 阅读 · 0 评论 -
php7:网站扫描
本次要完成的工作是得到一个网站下的相应标签。在开始之前,我先介绍一下提取标签所要用到的类:DOMDocument类:可以看作是一个HTML或XML文档类loadHTMLFile方法:完成对某个url文档的提取getElementsByTagName($tag):根据标签得到一个DOMNodeList对象DOMNodeList类:HTML文档中标签节点的集合,可以通过foreach进行遍历得到DOMElement对象DOMElement类:HTML元素节点类,可以直接进行处理nodeV原创 2020-07-17 11:19:51 · 374 阅读 · 0 评论 -
php生成器
php生成器是什么?就我个人理解,php生成器就是一个函数,不过这个函数包含了yield关键字,使用了这个关键字后调用该函数会返回一个Generator Object对象,遍历该对象可以执行该函数得到yield返回的值。在遍历对象时程序每次执行到yield就会返回值并保留当前状态,下一次循环时从yield的下一行开始执行直道循环结束。这样的话在一个循环中使用yield关键字就会返回多个值。就php生成器的优点我在后面的学习中会补充基本使用产生1到10的数echo "<hr />";e原创 2020-07-15 09:38:57 · 421 阅读 · 0 评论 -
php7对象遍历
很多时候我们需要对类的实例对象进行遍历,这时候php提供了foreach循环来遍历对象。为了更好的控制遍历对象的想遍历的属性,php提供了Iterator迭代器来控制遍历。这里只讲一下对象遍历的方法。目前我还有许多疑问:遍历对象使用的实际场合迭代器的含义和原理使用foreach进行遍历对象foreach语句遍历对象时只能遍历对象的公有属性,想要遍历对象全部使用在类中封装一个方法来使用foreach语句<?php/* * 1.使用foreach来遍历一个类对象 * **/c原创 2020-07-14 20:39:45 · 326 阅读 · 0 评论 -
php7:自动加载的实现
本博客参考<<php7编程实战>>的自动加载什么是自动加载在实际项目中,各个类都放在单独的一个文件中,在实际项目的运行过程中需要调用许多类来共同协调,因此每次调用其它类文件都需要使用include或require结构来完成调用,为了减少代码的冗余度,PHP支持自动加载机制以自动调用需要的类文件。php自动加载需要完成的功能对单个文件的载入:使用require语句调用类时自动执行的自动加载注册函数:spl_autoload_registerphp7对命名空间的支持,在文件原创 2020-07-10 11:12:16 · 673 阅读 · 0 评论 -
PHP7:phpUnit的简单使用
本博客参考网址:https://www.php.cn/php-weizijiaocheng-380671.htmlphpUnit是什么?我简单的理解一下,phpUnit就是一个扩展工具包,你可以通过使用该包中的某些类实现对项目中代码的调试,发现其中的错误。phpUnit使用基础(针对本博客)会使用composer来安装一些需要的库使用步骤使用composer安装相应的phpunit库demo代码:在链接网址中代码更加详细,这里只给出其中一个调试demo代码:<?phpc原创 2020-07-09 15:57:12 · 406 阅读 · 0 评论