首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    想学习php的,不如来这里看看

    常量不能被放到双引号里面或者花括号里面,要用.来连接常量 14.预定义常量 PHP_OS 系统平台 PHP_VERSION php当前的版本 __LINE__ 该行代码在第几个行 __FILE_..., 可以把它们放在一个数组中,然后用数组作为第一个参数,就可以实现多个替换了, 并且还可以实现多个替换多个,就是把第二个参数也变成数组,两个数组对应替换 字符串拆分常用函数 1.pathinfo($str...() 将' " & 转成实体,防止对数据库造成破坏 26.正则表达式 正则表达式是用于描述字符排列和匹配模式的一种语法规则,它主要用于字符串的模式分割,匹配,查找及替换操作,在PHP...里面可以修改 2.在服务器端通过php处理上传 upload_max_filesize input type = file 上传框中文件的最大值 post_max_size form表单的总大小...数据表三部分组成 1.表结构 列信息 2.表字段(数据) 行信息 3.表记录 (索引) 把列中的行加到索引中(一般情况下一个表一定要把id这一列的所有数据都加到主键索引中) mysql基本命令

    1.3K30

    面试题(五)

    正确答案:C 答案分析:构造函数设置为private,仅能确保无法通过 new 创建新实例,但仍可以通过 clone、反序列化等方式创建多个实例。...为了效率数据库可以有多个读库 数据库可以用主从做热备 数据库不能提供多主多从架构 数据库主从是通过日志同步的 正确答案:C 答案分析: 数据库可以提供多主多从架构。...以下关于NOSQL的说法,不对的是: Redis支持字符串、哈希、列表、集合、有序集合等数据结构,目前Redis不支持事务。...时4时每分钟执行一次 B:每周三的1时4时每3分钟执行一次 C:满足要求 D:每天的1时4时每3分钟执行一次 在拆分之前,系统中很多列表和详情页所需的数据是可以通过sql join来完成的。...而拆分后,数据库可能是分布式在不同实例和不同的主机上,join将变得非常麻烦。下面哪种方法不能有效解决这个问题? 全局表,系统中所有模块都可能会依赖到的一些表在各个库中都保存。

    38410

    2018年小米高级 PHP 工程师面试题(模拟考试卷)

    正确答案:C 答案分析:构造函数设置为private,仅能确保无法通过 new 创建新实例,但仍可以通过 clone、反序列化等方式创建多个实例。...A:为了效率数据库可以有多个读库 B:数据库可以用主从做热备 C:数据库不能提供多主多从架构 D: 数据库主从是通过日志同步的 正确答案:C 答案分析: 数据库可以提供多主多从架构。...,无法解决js标签内的xss 9、下列哪一项不是PHP SAPI模式?...时4时每分钟执行一次 B:每周三的1时4时每3分钟执行一次 C:满足要求 D:每天的1时4时每3分钟执行一次 17、在拆分之前,系统中很多列表和详情页所需的数据是可以通过sql join来完成的。...而拆分后,数据库可能是分布式在不同实例和不同的主机上,join将变得非常麻烦。下面哪种方法不能有效解决这个问题? A 全局表,系统中所有模块都可能会依赖到的一些表在各个库中都保存。

    63930

    2018 年小米高级 PHP 工程师面试题

    正确答案:C 答案分析:构造函数设置为private,仅能确保无法通过 new 创建新实例,但仍可以通过 clone、反序列化等方式创建多个实例。...A:为了效率数据库可以有多个读库 B:数据库可以用主从做热备 C:数据库不能提供多主多从架构 D: 数据库主从是通过日志同步的 正确答案:C 答案分析: 数据库可以提供多主多从架构。...,无法解决js标签内的xss 9、下列哪一项不是PHP SAPI模式?...时4时每分钟执行一次 B:每周三的1时4时每3分钟执行一次 C:满足要求 D:每天的1时4时每3分钟执行一次 17、在拆分之前,系统中很多列表和详情页所需的数据是可以通过sql join来完成的。...而拆分后,数据库可能是分布式在不同实例和不同的主机上,join将变得非常麻烦。下面哪种方法不能有效解决这个问题? A 全局表,系统中所有模块都可能会依赖到的一些表在各个库中都保存。

    39120

    WordPress 的 PHP 编码规范

    引号 正确的使用单引号和双引号,如果字符串中不包含变量的时候,则使用单引号,永远不要在字符串中转移引号,而是通过切换引号类型,比如: echo '行中对其使用空格。...函数多行调用 将一个函数调用拆分为多行时,每个参数必须位于单独的行上, 单行内联注释可以单独一行: 每个参数不得超过一行,如果一个参数需要多行,那么可以先将其赋值给一个变量,然后再将该变量传递给函数调用...没有命名参数,标志的值是没有意义的,每次遇到像上面例子这样的函数调用时,我们都必须搜索函数定义才明白什么意思。通过使用描述性字符串值而不是布尔值,可以使代码更具可读性。...HooK 标签中使用的变量应该用大括号 { 和 } 括起来,完整的外部标签名称用双引号括起来。这是为了确保 PHP 可以正确解析内插字符串中给定的变量。

    5.5K40

    php基础(二)

    php的原生函数,暂时分为数组函数、字符串处理函数、时间函数、文件操作函数、数据库函数,后面再看看需不需要扩展。...5.对缓存的了解 php缓存技术详细介绍及php缓存的实现代码 二、数据库知识 1.数据库的基本增删查改 基本的增删改查语句,关联语句,函数等过一遍 2.谈谈数据库优化的方法 (1)创建表的时候避免使用...如果实体中的某个属性有多个值时,必须拆分为不同的属性 第二范式:满足第一范式前提,当存在多个主键的时候,才会发生不符合第二范式的情况。...AOF文件中的命令全部以Redis协议的格式来保存,新命令会被追加到文件的尾部,Redis还可以在后台对AOF文件进行重写(rewrite),使得AOF文件的体积不会超出保存数据集状态所需的实际大小。..."错误代码:[{$errno}] {$errmsg} ".PHP_EOL; echo "错误行号:{$file}文件中的第 {$line} 行"

    1.1K20

    php字符串基本操作

    );//输出8,返回整数型 $str1='你好'; echo str_word_count($str1);//无法查询中文,返回0 字符串拆分与组合 拆分explode,组合implode explode...根据字符串位置可以拆分为一个数组 implode可以添加符号进行数组元素组合 /*字符串拆分与组合  *拆分explode(分解符,字符串),  *组合implode(分解符,字符串)  *explode...根据字符串位置可以拆分为一个数组  *implode可以添加符号进行组合  */ $string1='A_B_c_d_e_f_g'; $string2='这个 是 按 照 一定 的 空格 进 行 拆分 ...);//拆分string2,传值给变量b print_r($b);//打印数组b //implode(组合符号,数组名),组合数组的元素 echo implode('-',$a); echo "...php  //字符串空格清除trim:两端清空,ltrim:左边空格清空,rtrim?

    1.2K10

    利用SQLite数据库文件实现任意代码执行

    我们希望这篇文章能够给各位带来有价值的信息,并且各位能够通过这篇文章中的内容自己动手复现这个漏洞。...在上面这个例子中,语句在/var/www/目录下创建了一个名为lol.php的文件,我们可以使用“lol”作为数据库名称来访问这个文件接下来,我们在“lol”数据库中创建了一个名为“pwn”的表,并向该表插入了一个字符串...这是因为当用户在命令行中按下回车之后,便会插入一个新行,而括号中包含的指令是subshell所需要执行的指令。...这样一来,我们只需要插入新的一行,就可以让ash忽略整个文件的内容了。现在我们要解决的就是如何修复ash的第二个报错,即“unterminated quoted string”(未结束引用字符串)。...图片2:执行“echo”命令 很简单,解决第二个报错的方法就是另外插入新的一行。大家可以从图片2中看到,我们在新的一行中向CREATE语句中添加了“withoutrowid”。

    2.3K100

    数据库专题(一) ——数据库优化

    4、避免使用数据库的rand()函数 当需要查询表中的随机x条数据,避免使用rand,因为其无法使用索引。可以使用PHP将需要查询的随机条件提取出来,则在数据库中只要执行查询即可。...冗余字段即在表A中加入一个字段bid,则很容易从表a中确定每一行和表b的对应关系。...映射表单独使用,便于单独查询与维护,但是当表A、B中任何一行被删除时,都需要同步删除相应的映射表;冗余字段查询方便,查询A可以附带把B的信息查到,但是其维护复杂,当表B删除一行时,则还需要考虑是将A的此行置空还是不允许...当表的新增、删除次数远大于查询时,如用于消息队列的表,有新内容则存放于表内,表内的内容处理完则删除本行数据,则不建议建立索引。 另外,索引要建立在区分度较高的字段中。...4、数据库分表 1)字段拆分 当数据库字段较多,且其中某些字段内容较大又改动量少时,例如图片、大文件等,可以将表拆分,将这些字段另外在一个表存放。

    1.8K81

    如何优化PHP性能呢?PHP性能优化总结

    如果临时变量使用结束请立即注销,特别是在一些过程式代码的执行流程中,对于一些函数,如果业务非常复杂,同样需要立即注销临时变量 静态变量,对于一些需要由复杂业务产生的变量,如果在程序的执行过程中多次产生并使用...三、 函数(重要)  函数职责清晰,一个函数只干一件事,不要杂揉过多的业务逻辑 函数代码体不要超过 20 行,反之,考虑拆分。...使用常量的好处 编译时解析,没有额外开销 杂凑表更小,所以内部查找更快 类常量仅存在于特定「命名空间」,所以杂凑名更短 代码更干净,使除错更方便 六、字符串 用单引号替代双引号引用字符串;避免检索字符串中的变量...十二、 数据库优化(重要) 合理的商业需情 数据库 schema 架构优化 垂直与水平分库分表 索引优化,查询优化 第三方开源检索工具(sphinx) 主从数据库服务器的使用。...十三、 前端优化 合理的 html 结构 合理 html 与 css 的同时,考虑 Css 设计合理,减少 http 请求 合理 html 与 java script 的同时,考虑拆分是否合理,减少 http

    1.8K40

    php面试题目100及最佳答案

    值) 2、选择合适的字段充当主键 1)建议每张表必须有主键 2)用数字类型的字段充当主键 拆分表 拆分字段,将文章的标题与内容分开 2)拆分记录,将今年的记录与往年的记录分开...$id"); mysql_query("COMMIT"); 6、锁定表,优化事务处理: a.我们用一个 SELECT 语句取出初始数据,通过一些计算,用 UPDATE 语句将新值更新到表中。...分别用php,shell ,js实现将字符串中的字符全部转换成大写并输出。...redirect()这不是一个 PHP 函式,会引致执行错误。 91.PHP中的非静态方法可以通过静态调用吗,反之呢?...— 将一个一维数组的值转化为字符串 join — 别名implode htmlspecialchars — 把预定义的字符转换为HTML实体(比如说大于小于) nl2br — 在字符串所有新行之前插入

    8.4K30

    Docker 微服务教程

    站在 Docker 的角度,软件就是容器的组合:业务逻辑容器、数据库容器、储存容器、队列容器......Docker 使得软件可以拆分成若干个标准化容器,然后像搭积木一样组合起来。 ?...这是因为容器的/var/www/html目录(也就是本机的docker-demo目录)下面什么也没有,无法提供可以访问的内容。...2.3 官方的 MySQL 容器 WordPress 必须有数据库才能安装,所以必须新建 MySQL 容器。 打开一个新的命令行窗口,执行下面的命令。 ?...运行上面的命令以后,正常情况下,命令行会显示一行字符串,这是容器的 ID,表示已经新建成功了。...上面命令中,各个参数的含义前面都解释过了,其中环境变量WORDPRESS_DB_PASSWORD是 MySQL 容器的根密码。

    1.2K60

    代码重构之旅(一) 项目结构

    代码使用最简单的结构,没有使用任何完整框架,甚至有三四千行代码的文件,修改时最新的 IDE 都无法帮得上忙,发生问题时排查困难。...特别是程序员在写代码时,想引用之前的方法找不到,自己定义新的方法又无处放,只好在已经很杂乱的文件上堆砌。...配置:配置分散在各文件中,引用不易查,改动时无法保证完全改动。 测试:无测试项,改动后风险不可控。...如用户操作订单的相关逻辑: 如果按照实体来拆分,用户类和订单类都无法完全精确地表示。 而如果按照逻辑来拆分,多种多样的操作逻辑也同样让人抓狂。...小结 现在项目刚确定了代码结构,重构了基础方法,业务代码还在持续迁移中,下次会聊一聊怎么通过 框架路由 和 Nginx 配置进行灰度测试。

    86470

    PHP核心技术与最佳实践(二)

    ;where used表明使用了where限制,但是索引不够;impossible where,表明通过收集到的统计信息判断出不可能存在结果;using filesort,表示包含orderby且无法使用索引进行派讯操作...,当其中一个变量的值发生变化,才会另外创建一个内存块去保存新的值。...D.一个小型数据库的实现 1.pack函数,把数据装入一个二进制字符串;umpack,从二进制字符串对数据进行解包; https://github.com/zhangyue0503/php/blob/master...; 2.语句断行:保证程序语句一行就是一句,尽量不要使一行的代码太长保持在80个字符以内,如果太长使用....=断行书写,执行sql不要在函数内写SQL语句 3.更好的习惯:使用PHP中已经存在的常量,在echo中使用逗号连接字符串,更详尽的注释,不要滥用语法糖;

    1K20

    PostgreSQL 14 会破坏其官方的.NET 和 Java 驱动

    END 创建 SQL 函数,在某些情况下会破坏其官方的.NET 和 Java 数据库驱动。但只要不通过 Npgsql 或 PgJDBC 修改数据库模式,就不会出现问题。...事实上,SQL Server 等数据库将批处理语句作为一个庞大的 SQL 字符串整体发送。但 PostgreSQL 的 wire 通信协议工作机制有别如此。...虽然批处理语句依然整体发送,但客户端需将语句拆分为各条独立的命令。 原始实现可简单地假设每个分号标识一条语句的终止处。当然,分号也可能是一条语句字符串中的内容,而非一条语句的结尾。...由于分号可能并非出现在引号引起的字符串中,而是会出现在 BEGIN ATOMIC ... END 语句块内的任何位置,如果解析器使用当前的方法,就无法确定批处理中语句的拆分位置。...今日好文推荐 GitLab 技术选型为何如此不同:坚持用过气 Web 框架十多年、坚决不用微服务 首个冲刺科创板的国产数据库:78 岁老教授打磨四十年,每一行代码都自主可控 为什么 Rust 是初创公司的绝佳选择

    82530

    架构设计-数据库篇

    虽然业务分库能够分散存储和访问压力,但同时也带来了新的问题,接下来我进行详细分析。 1.join操作问题 业务分库后,原本在同一个数据库中的表分散到不同数据库中,导致无法使用SQL的join查询。...2.事务问题 原本在同一个数据库中不同的表可以在同一个事务中修改,业务分库后,表分散到不同的数据库中,无法通过事务统一修改。...例如,淘宝的几亿用户数据,如果全部存放在一台数据库服务器的一张表中,肯定是无法满足性能要求的,此时就需要对单表数据进行拆分。 单表数据拆分有两种方式: 垂直分表 和 水平分表。...原因在于单表切分为多表后,新的表即使在同一个数据库服务器中,也可能带来可观的性能提升,如果性能能够满足业务要求,是可以不拆分到多台数据库服务器的,毕竟我们在上面业务分库的内容看到业务分库也会引入很多复杂性的问题...关系数据库按照行式来存储数据,主要有以下几个优势: 业务同时读取多个列时效率高,因为这些列都是按行存储在一起的,一次磁盘操作就能够把一行数据中的各个列都读取到内存中。

    35120
    领券