访员 - 我不会重复这个问题,所以要小心。如何打印在其中写入的所有文本(全部)的PHP文件?
昨天我去了一个PHP面试和面试官只是问了我一个问题,访员 - 我不会重复这个问题,所以要小心。如何打印在其中写入的所有文本(全部)的PHP文件?
介绍自己
记者后 - 我就不重复了我的第一个和最后一个问题,所以要小心。如何打印一个PHP文件的所有文本(全部)编码在其中?
我回答道:我试图告诉我会写整个代码<code><?php ?></code>
标签面试官回答这个问题,这就是我可以在那个时候想到的。
访问者 - 你确定!
我没有回复。
记者 - 感谢您(不满意的表情)
猜我没有选择。我搜索了它也问了我的朋友,但我没有得到答案。
任何人都可以回答它。
请请。请。我想知道答案。
感谢面试官,他给了我很好的问题要问上SO
echo "<pre>";
echo htmlentities(file_get_contents($_SERVER['PHP_SELF']));
echo "</pre>";
这将得到我们在抓取它的内容的文件的名称,然后将其显示在页面上写入。
最后)最后的结果是什么; P – 2011-03-19 05:38:29
@劳伦斯,你在说什么,它在那里;)好的。 – RDL 2011-03-19 05:40:33
我需要这样做echo htmlentities(file_get_contents('。'。$ _ SERVER ['PHP_SELF']));因为php_self返回/scriptname.php不./scriptname这就是为什么我用SCRIPT_FILENAME lol – 2011-03-19 05:42:48
访问相应的项目中$_SERVER
找出当前脚本的名称,然后使用PHP的文件函数来显示文件的内容。
这是更好的方式
echo highlight_string(file_get_contents($_SERVER['SCRIPT_FILENAME']));
<?php
$file = new SplFileObject(__FILE__);
$file->fpassthru();
?>
巧合的是,我现在正在使用'SplFileObjects',并且这个例子粗略地(逐行代替)在手册中。 – 2011-03-19 05:58:03
<?php echo file_get_contents(__FILE__); ?>
这是满足面试官要求的最基本的答案。我会跟进一个澄清的问题,询问他们是否需要更漂亮的显示。
+1小而甜的回答。谢谢 – Wazzzy 2011-03-22 04:16:18
你是否在家试过你的答案? – 2011-03-19 07:32:58
整个采访是基于这个问题?真的吗?哇。无论如何,你可能不希望在那里工作。 – Spot 2013-10-15 01:57:34