首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP文件存在& Wordpress短程序

PHP文件存在& Wordpress短程序
EN

Stack Overflow用户
提问于 2015-12-27 11:49:22
回答 1查看 61关注 0票数 0

我试图从一个.txt文件中检索停车场的数量,它在静态站点iframe上工作,但我想编写一个短代码,并将其放在wordpress主题函数文件中。

因为某种原因它没有读取数据..。

代码语言:javascript
复制
function GenerateLOT($atts = array()) {

// Default Parameters
extract(shortcode_atts(array(
    'id' => 'id'
), $atts));

// Create Default Park / Help
if ($id == '') {
    $id = 'PARK IDs: bahnhofgarage;';
}

// Create Park Bahnhofgarage
if ($id == 'bahnhofgarage') {
    $completeBahnhof = "//xxx.de/bahnhof.txt";
    if(file_exists($completeBahnhof )) {
        $fp=file($completeBahnhof );
        $Garage = $fp[0];
        $valmpl=explode(" ",$Garage);
        $Bahnhof_Platz =  $valmpl[0];
        $Bahnhof_Tendenz = $valmpl[1];
    }

    $id = $Bahnhof_Platz;
}

return $id;
}
add_shortcode('parking', 'GenerateLOT');

停车id=“bahnhof车库”

PS: .txt正在正常工作,如:000 - //bahnhof 27.12.15 12:46:59

出于某种原因,它只显示$park == ''文本,而不显示根据短代码param显示的停车场。

我使用过本教程:sitepoint.com/wordpress-短路代码-教程/

编辑:有6个停车场。

EDIT2:在所有实例上将park更改为id

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-27 12:38:24

问题是您无法在远程路径上有意义地使用file_exists。详情请参见exists() returns false even if file exist (remote URL)" question

您可能应该在这条路径上调用file()。如果遇到错误,它将返回FALSE

代码语言:javascript
复制
if ($id == 'bahnhofgarage') {
    $completeBahnhof = "//xxx.de/bahnhof.txt";
    $fp=file($completeBahnhof );
    if ($fp !== false) {
        $Garage = $fp[0];
        // rest of code

另外,shortcode_atts()用于为短代码属性提供默认值,而您似乎正在使用它作为短代码属性和内部变量名之间的某种映射。

在短代码中访问远程服务器上的文件是自找麻烦。只要想一想,如果这个服务器超载,响应缓慢,或者不再可用,会发生什么情况。您确实应该异步访问该文件。如果它位于您的服务器上,则通过文件系统路径访问它.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34480102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档