可锐资源网

技术资源分享平台,提供编程学习、网站建设、脚本开发教程

PHP设计模式之解释器模式

解释器模式属于行为型模式

概述:给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子

解释器模式的优缺点:

解释器是一个简单的语法分析工具,它最显著的优点就是扩展性,修改语法规则只需要修改相应的非终结符就可以了,若扩展语法,只需要增加非终结符类就可以了。 但是,解释器模式会引起类的膨胀,每个语法都需要产生一个非终结符表达式,语法规则比较复杂时,就可能产生大量的类文件,为维护带来非常多的麻烦。同时,由于采用递归调用方法,每个非终结符表达式只关心与自己相关的表达式,每个表达式需要知道最终的结果,必须通过递归方式,无论是面向对象的语言还是面向过程的语言,递归都是一个不推荐的方式。由于使用了大量的循环和递归,效率是一个不容忽视的问题。特别是用于解释一个解析复杂、冗长的语法时,效率是难以忍受的。

PHP 随机字符

随机字符生成

  1. function randStr($length=4,$type="1"){

  2. $array = array(

  3. '1'=>'0123456789',

wordpres调用指定分类下面子分类

       <?php
                        // 获取主分类 "News" 的信息(通过slug获取,确保与您的站点结构一致)
                        $parent_category = get_term_by('slug', 'news', 'category');
                        if ($parent_category) : ?>
                            <h3 class="widget-title">
                                <span>
                                    <a href="<?php echo esc_url(get_category_link($parent_category->term_id)); ?>">
                                        <?php echo esc_html($parent_category->name); ?>
                                    </a>
                                </span>
                            </h3>
                            <ul>
                                <?php
                                // 查询主分类下的子分类(深度为1,仅显示直接子分类)
                                $child_categories = get_categories(array(
                                    'parent' => $parent_category->term_id,
                                    'depth' => 1,
                                    'orderby' => 'name',
                                    'hide_empty' => false
                                ));

                                foreach ($child_categories as $child_category) : ?>

                                    <li class="cat-item cat-item-<?php echo esc_attr($child_category->term_id); ?>">
                                        <a href="<?php echo esc_url(get_category_link($child_category->term_id)); ?>">
                                            <?php echo esc_html($child_category->name); ?>
                                        </a>
                                        <span class="plus-minus"></span> <!-- 加减号图标容器 -->
                                    </li>

                                <?php endforeach; ?>
                            </ul>

                        <?php endif; ?>
                    </section>
                    <?php
                    // 调用页脚侧边栏(支持多个小工具并列显示)
                    if ( is_active_sidebar( 'primary-abouts-sidebar' ) ) {
                        dynamic_sidebar( 'primary-abouts-sidebar');
                    }
                    ?>

Web 安全之路径遍历攻击详解

路径遍历攻击(Path Traversal Attack)是一种利用应用程序对文件路径处理不当的漏洞进行攻击的方法。攻击者通过操纵应用程序的输入,访问或修改不应该被访问的文件,从而实现攻击目的。路径遍历攻击也被称为目录遍历攻击或目录穿越攻击。

什么是路径遍历攻击

学习phpMyAdmin scripts:setup.php 反序列化漏洞

phpMyadmin是一套开源的、基于Web的Mysql数据库管理工具。这个实验利用php的反序列化实现了任意文件读取,影响的版本是phpMyAdmin 2.x,然鹅,令人激动的是网上有师傅分享了利用该漏洞实现了反弹shell,思路是先访问出错,让access.log或者error.log记录出错信息,然后在利用反序列化读取access.log或者error.log文件中的代码,实现反弹shell,心动不如行动~

PHP加速插件安装和配置

安装 zend OPcache php 加速插件

wget http://pecl.php.net/get/zendopcache-7.0.3.tgz

tar zxvf zendopcache-7.0.3.tgz

cd zendopcache-7.0.3

joomla未授权到RCE

前言

joomla未授权披露已经有一个多月了吧,本身的未授权来讲比较简单,分析起来也很简单,跟下去就可以看到漏洞触发点以及原因,但是前两天在刷twitter的时候看到了这样的一篇文章

轻量级分布式文件系统FastDFS安装和调试

fastdfs 安装

wget http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

wget http://fastdfs.googlecode.com/files/FastDFS_v4.06.tar.gz

zend studio 乱码

zend studio 乱码

最近学习php 发现有的代码中文显示 乱码,查找原因 因为页面时utf 编码 zend 设置的 gbk 编码, 修改 zend 设置 edit - set encoding 修改 other utf-8
单个PHP文件中文乱码问题解决方法

  首先使用zend studio7打开一个UTF8编码的PHP文件,点击FileProperties,出现如下界面

几款主流PHP IDE优缺点评测

Zend Studio是php的官方IDE,不免费,在代码自动完成、生成、提示、调试上功能都很强大。

【缺点】

Zend Studio对于html/css/javascript的支持不太好,虽然从Zend Studio9开始Zend Studio已经对html/javascript提供了支持,但是还是功能还是弱些,如css选择器不能自动提示。

【适用者】纯PHP码农,如后端大牛

<< < 30 31 32 33 34 35 36 37 38 39 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言