当前位置: 首页 > 后端技术 > PHP

程序员找工作必备的PHP面试题-Day12

时间:2023-03-30 04:17:48 PHP

《PHP学习网》公众号每天都会分享一些面试题,找工作的朋友可以看看。1.将$day1和$day2设置为yyyy-mm-dd格式的日期。使用mktime()创建时间戳,然后使用date()以yyyy-mm-dd格式显示日期。2.请写php-l、php-m、php-r的作用。php–l:检测PHP语法php–r:直接运行PHP代码php–m:打印出内置和加载的PHP和zend模块3.写一个你知道的可以让HTML和PHP分离使用的模板,并简单描述它的工作原理。Smartytpl模板文件采用php官方开发的smarty模板语言编写而成。tpl文件被hbcms系统第一次调用后,会自动编译并生成一个php文件存放在template/system/compile目录下。稍后再次调用tpl文件,smarty系统会自动判断tpl文件是否被修改。如果没有修改过,则不会重复编译,而是直接读取上次编译的php文件。4、如何获取某个程序中第n行和第m行之间程序片段的执行时间$start=microtime(true);程序片段$end=microtime(true);回声($结束-$开始);5。如何实现字符串翻转?1.内置函数strrev()2.$str="abcdefg";functionstrrevv($str){$len=strlen($str);$newstr='';for($i=$len;$i>=0;$i--){$newstr.=$str[$i];}return$newstr;}$showstr=strrevv($str);echo$showstr."
";6.解释以下代表的含义:LINEFILE$SERVER[“REMOTE_ADDR”]$SERVER[“PHP_SELF”]__LINE__:当前文件的行数__FILE__:返回文件的完整路径和文件名。如果在包含文件中使用,则返回包含文件名$SERVER["REMOTE_ADDR"]:浏览当前页面的用户IP地址。$SERVER[“PHP_SELF”]:当前正在执行的脚本的文件名七、如何提高数据库访问速度?依据是什么?1.表设计一定要优化,尽量少冗余数据,少用join查询。如果在实际应用中,使用了极其复杂的连接和子查询,就必须重新考虑数据表的设计。2、尽量使用char而不是varchar,因为定长字符串使用起来更快。在硬盘容量越来越大的今天,牺牲一些存储空间来换取查询速度的提升是值得的。3.通过简化权限提高查询速度。如果在查询前需要进行大量的权限验证,查询速度会变慢。你可以尝试在mysql中用root登录,用你新建的有权限控制的用户登录。你可以看到。root登录,点击订阅者进入,普通用户登录,总会有延迟。4.表优化。如果一个表已经使用了一段时间,随着更新和删除的发生,数据会变得碎片化,这也会增加物理搜索表所花费的时间。你需要知道的是,在mysql的底层设计中,数据库会被映射成某种文件结构的目录,表会被映射成文件。所以磁盘碎片很可能发生。好在在mysql中,我们可以通过如下语句修复:8.假设你对数据库(dbname=TEST_DB)有足够的权限,请给192.168.1.100服务器上的testuser用户授予所有访问数据库的权限,并设置它的访问密码。将TEST_DB.*上的所有内容授予由“123”标识的testuser@192.168.1.100;9、什么情况下应该备份数据库?如何备份数据库?保持数据完整性,防止数据丢失,病毒感染1.直接复制数据库文件2.使用命令mysqldump3.使用工具进行备份10.假设现在mysql服务器查询速度慢,如何找到导致速度慢的具体查询语句?如何终止这条语句的执行?使用microtime查看每条sql语句的执行时间是比较长的。使用EXPLAIN语句分析select语句的运行效果。例如explain可以获取select语句使用的索引和排序条件。终止语句的执行可以检测到正在运行的进程,然后将其杀死。显示进程列表;杀死检测到的ID;最后大家可以扫描下方二维码关注我公众号,我目前正在更新基础面试题,稍后会更新中高级面试题,redis,liunx面试题