我有一个PHP代码,显示列表中目录的文件内容.每个文件都是链接的,因此如果单击,它将下载或打开.目录中的文件将是客户上传的文件.如果文件名包含空格,则链接已断开且无法打开,因此我希望将空格替换为下划线.
我知道str_replace做了我正在寻找的东西,但我不知道如何将它应用于这个代码(我没有写).
// Define the full path to your folder from root
$path = "uploads/artwork";
// Open the folder
$dir_handle = @opendir($path) or die("Unable to open $path");
// Loop through the files
while ($file = readdir($dir_handle)) {
if($file == "." || $file == ".." || $file == "index.php" )
continue;
echo "<a href=uploads/artwork/$file>$file</a><br />";
}
// Close
closedir($dir_handle);
Run Code Online (Sandbox Code Playgroud)
非常感谢所有帮助.谢谢!
所以我有str_replace搜索字符串中的"和"并用它替换它&
但是如果有一个单词包含字母"和",例如"Howland"它将替换它Howl&.
我怎样才能使它只搜索单词和.
这是我设置的功能:
function add_ampersand( $string ) {
$string = str_replace( 'and', '&', $string );
return $string;
}
Run Code Online (Sandbox Code Playgroud)
我必须注意,此函数正在URL中使用,因此"和"将在其旁边包含" - ",然后将其转换为空格.
例如,我想从用户输入绝对路径,如“C:\Users\User\Desktop”并将其更改为“C:\\Users\\User\\Desktop”,但是当我执行以下操作时:
path = input("Enter path: ")
和
path = path.replace("\", "\\")
当\\触发的转义序列时,它会引发语法错误。我如何绕过这个并实现替换?
更正:它需要输入并自行调整!没有必要做上面提到的这种事情......
我有一个关于mysql数据库的表,如下所示:
|word|replace|
--------------
|sa | sap |
|ri | sip |
|na | sup |
--------------
Run Code Online (Sandbox Code Playgroud)
所以,如果我提交单词:sarina,它会自动更改:sapsipsup
我试过这样的:
$word= array("sa", "ri", "na");
$replace = array("sap", "sip", "sup");
$str = str_split("sarina",2);
$result = str_replace($word, $replace, $str);
echo $result;
Run Code Online (Sandbox Code Playgroud)
但是,它不是动态的,我的意思是......我应该首先将"sarina"拆分为2个字符.如何使任何单词自动简单?
提前致谢.
我试图'用另一个quote(’)替换单引号(),但我似乎无法得到任何工作.另外,如何在多个字符串上进行此操作($text, $title, $notice)?
输入:不要
输出:不要
我在尝试这个:
$text = str_replace(array("'",'"'), array('’'), $text);
$text = htmlentities(str_replace(array('"', "'"), '’', $text);
$text = htmlentities(str_replace(array('"', "'"), '’', $_POST['text']));
$text = str_replace("'" ,"’",$text);
$text = str_replace("'" ,"’",$text);
$text = str_replace(array("'"), "’", $text);
$text = str_replace(array("\'", "'", """), "’", htmlspecialchars($text));
$text = str_replace(array('\'', '"'), '’', $text);
$text = str_replace(chr(39), chr(146), $text);
$text = str_replace("'", "&quot;", $text);
Run Code Online (Sandbox Code Playgroud)
这些都不起作用.
我必须从字符串中删除最后一个空格
(\s)a(\s)b(\s)
Run Code Online (Sandbox Code Playgroud)
所以,基本上就像我的字符串一样结束为:
(\s)a(\s)b
Run Code Online (Sandbox Code Playgroud)
为了清楚起见,id喜欢搜索''而不是执行正则表达式,但我使用了正则表达式模式,因此你可以理解空格.
我该如何使用php?
所以我有一个包含丹麦字符(æ)的字符串,说:
string textString = "tæst";
string newString = "";
由于某种原因
newString = textString .Replace("æ", "e");
Run Code Online (Sandbox Code Playgroud)
未正确替换,newString = "tæst"应按原样生成newString = "test"。
但是,并非总是如此!
我已经在多台服务器上进行了测试,在某些服务器上可以正确返回,而"test"在其他服务器上则可以"tæst"。
我在想,也许该字符串不能被识别为utf8字符串,并且应该被强制识别为utf8。只是一个猜测,您有想法/猜测吗?
谢谢
如何用|?替换新行?
让我们说我有这些:
$strPar = "12345|12345|12345|12345
12345|12345|12345|12345
12345|12345|12345|12345";
Run Code Online (Sandbox Code Playgroud)
我希望它像这样:
$strPar = "12345|12345|12345|12345|12345|12345|12345|12345|12345|12345|12345|12345";
Run Code Online (Sandbox Code Playgroud)