php - 调用未定义的函数 str_contains() php
问题描述
我的代码通过 APACHE 在 localhost 上运行,但是当我托管一个包含所有相同文件和代码的网站时,我收到以下消息:
致命错误:调用/storage/ssd3/524/16325524/public_html/static/中的未定义函数 str_contains()错误显示的第55行
PHP 代码中的header.php :
<?php
$menu = getAllData('meni');
global $korisnik;
for ($i = 0; $i < count($menu); $i++){
if(isset($_SESSION['korisnik'])){
if(str_contains($menu[$i]->naziv, 'login') || str_contains($menu[$i]->naziv, 'reg')){
continue;
}
echo '<li><a href='.$menu[$i]->putanja.'>'.$menu[$i]->naziv.'</a></li>';
}
else {
if (str_contains($menu[$i]->naziv, 'profile') || str_contains($menu[$i]->naziv, 'out')) {
continue;
}
echo '<li><a href=' . $menu[$i]->putanja . '>' . $menu[$i]->naziv . '</a></li>';
}
}
?>
解决方案
str_contains()是在 PHP 8 中引入的,在较低版本中不受支持。
对于较低的 PHP 版本,您可以使用strpos()的解决方法:
if (strpos($haystack, $needle) !== false) {
// haystack contains needle
}
推荐阅读
- vue.js - 无法更改 vue2editor 中的视频链接输入位置
- javascript - React JS:index.css 1:0 中的错误(模块解析失败:意外令牌 (1:0))
- android - 在 Android Studio 中使用 OkHttp 向 AVS 发送事件 https 请求后,未通过 response.body().string() 获得 downchannelStream 响应
- sql - 使用sqlserver根据时间段获取不同的MO
- mysql - 如何杀死 Mysql Pending 线程?
- c# - 在 WPF 中将枚举绑定到 ComboBox
- input - 稀疏特征之间的差异
- ringcentral - RingCentral API 中的扩展名详细信息
- node.js - 使用 nginx 部署时,NestJs 在所有路由上返回 404,但在本地一切正常
- linux - 安装深度桌面后我的 VS Code 自动打开