【发布时间】:2020-08-11 23:46:03
【问题描述】:
我有一个包含数字和网址的多行文本文件
59=folder/image.png
63=folder/image2.png
etc...
我想在文件中搜索“59”,然后在 img src 中回显 url
如果文本文件不包含“59”,我想回显一个替代图像
有问题,因为png文件名也是整数
正如下面一位用户所指出的,我已尝试使用没有意义的代码进行此操作。
【问题讨论】:
标签: php
我有一个包含数字和网址的多行文本文件
59=folder/image.png
63=folder/image2.png
etc...
我想在文件中搜索“59”,然后在 img src 中回显 url
如果文本文件不包含“59”,我想回显一个替代图像
有问题,因为png文件名也是整数
正如下面一位用户所指出的,我已尝试使用没有意义的代码进行此操作。
【问题讨论】:
标签: php
你说你想“在文件中搜索 59”,但实际上你肯定只想搜索行首。这将解决文件名中包含数字的问题。
到目前为止,您的代码没有多大意义,它根本没有在文本中的任何位置搜索 59。
这将正确地完成工作:
$search_ID = "59"; //Note: this is now a string, so we can check its length, and match that in the file
$data = file_get_contents('text_file.txt'); //$contents was redundant, just start by calling it $data
$result = "";
if (substr($data, 0, strlen($search_ID)) == $search_ID)
{
$result = substr($data, strpos($data, "=")+1);
}
else
{
$result = "something else"; //replace this with whatever alternative output you need
}
演示:http://sandbox.onlinephpfunctions.com/code/fb413cd66670001fe6e665b9e10b55285d1440b1
附:此代码假定文件只有一行。从您的问题中不太清楚,它是否有可能具有相同格式的多行。
【讨论】: