小编Kev*_*vin的帖子

使用 PHP 关闭或修复损坏的 img 标签

我在使用 PHP 修复“损坏”的 html 字符串时遇到了麻烦

我面临在 html 字符串上使用 substr 的常见问题,这会导致标签损坏。

我设法修复了所有损坏的标签,除了图像一个,因为标签本身并不完整,它甚至不是一个开始标签,

例如,假设您有一个字符串:

<div><img alt="foo" title="bar" 
Run Code Online (Sandbox Code Playgroud)

我真的很想添加一个>来关闭它,而我的其他脚本知道如何div自动关闭它。

有没有人对如何捕获损坏的<img>标签并自动修复它们有任何想法?

我见过很多解决方案,包括 DOMdocument、tidy 和 HTMLpurifier,但它们似乎没有解决这个特定问题。

任何帮助,将不胜感激。

html php tags

1
推荐指数
1
解决办法
1393
查看次数

你应该在PHP中缓存MySQL连接吗?

缓存MySQL连接有什么缺点吗?

例如,

$mysqli = new mysqli(params);
apc_store('mysqli', $mysqli);
Run Code Online (Sandbox Code Playgroud)

如果您网站上有很多用户都需要连接,这可以节省一些时间.而不是为每个用户打开连接,为什么不缓存它?

我没有通过谷歌搜索找到任何东西,所以只是想知道我是否错过了什么.

谢谢你的时间.

php mysql mysqli caching

1
推荐指数
1
解决办法
1197
查看次数

PHP从数组索引中获取值

我有这个字符串:

$hours = '7, 8, 12';
$hourData = explode(', ', $hours);
Run Code Online (Sandbox Code Playgroud)

如果我var_dump($hourData),它返回:

array(3) {
    [0]=>
    string(1) "7"
    [1]=>
    string(2) "8"
    [2]=>
    string(2) "12"
}
Run Code Online (Sandbox Code Playgroud)

我有这个代码:

<?php for ($i=0; $i <= 23 ; $i++) { ?>
    <div class="fl">
        <input type="checkbox" name="limit_hour[]" value="<?php echo $i ?>" class="fl limit_hour"
        <!-- ======================================================================== -->
        <?php echo (isset($hourData[$i]) && $i == $hourData[$i] ? 'checked' : '') ?>>
        <!-- ======================================================================== -->
        <span class="fl lmBox"><?php echo $i ?>:00 - <?php echo $i ?>:59</span>
    </div>  
<?php } …
Run Code Online (Sandbox Code Playgroud)

html php arrays

1
推荐指数
1
解决办法
137
查看次数

PHP echo内联CSS后台url

我试图使用PHP回声一些内联CSS:

echo '<div class="image" style="background:url("img/testimage.jpg");width:300px;height:232px;">';
echo '</div>';
Run Code Online (Sandbox Code Playgroud)

但由于某种原因,这是回归:

<div class="image" testimage.jpg");width:300px;height:232px;"="" img="" style="background:url("></div>
Run Code Online (Sandbox Code Playgroud)

这是在WordPress环境中,我做了一些明显的错误吗?

html css php

1
推荐指数
1
解决办法
1802
查看次数

在php中以更好的方式在字符前剪切字符串

关于php,我有一个非常简单的问题.

我有这个字符串:

This is a simple string | badword is here
Run Code Online (Sandbox Code Playgroud)

我需要这个:

The is a simple string
Run Code Online (Sandbox Code Playgroud)

所以,

我在下面使用了以下代码:

$word = substr($word, 0, strpos($word, '|'));
Run Code Online (Sandbox Code Playgroud)

如果我使用该代码,我必须检查|字符串中是否有任何字符,如果是,请删除它.

所以它的速度非常低,我无法使用它.

获取结果的最快方法是什么,而不检查|char是否在主字符串中?

php string

1
推荐指数
1
解决办法
2904
查看次数

使用MySQLi时,在非对象上调用成员函数real_escape_string()

我已尝试在关于此主题的其他问题上发布的每个解决方案,但它们都不起作用.

我很抱歉,如果这是一个基本问题,但我是MySQLi的新手,我无法弄清楚为什么这个连接不起作用.

我的functions.php文件中有一个函数,它具有:

function cleanInput($string) {
    $stripsql = $connect->real_escape_string($string);
    $addslashes = addslashes($stripsql);
    return $addslashes;
}
Run Code Online (Sandbox Code Playgroud)

第二行是在标题中抛出该错误.

我连接到数据库,$connect是一个工作变量.它在config.php中设置使用:

$connect = new mysqli('localhost', 'shop', 'password', 'zen');
Run Code Online (Sandbox Code Playgroud)

我甚至尝试在功能之前移动该线路无济于事.

var_dump$connect在functions.php文件不返回NULL,则返回有关数据库开始的数据object(mysqli)#1 (19) { ["affected_rows"]=> int(0),然后用大量的行继续.

php mysql mysqli

1
推荐指数
1
解决办法
4849
查看次数

php通过登录页面连接到数据库

我是非常新的PHP所以请原谅我的新代码,虽然我需要使用PHP,但是我更需要使用PHP,目前我有php页面连接到数据库,如果成功将值存储到cookie中虽然由于字符串不正确而抛出这些错误消息

Warning: Illegal string offset 'Member_Username' in C:\xampp\htdocs\awm\includes\login.php on line 10

Warning: Illegal string offset 'Member_Password' in C:\xampp\htdocs\awm\includes\login.php on line 10

Notice: Trying to get property of non-object in C:\xampp\htdocs\awm\includes\login.php on line 13
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

<?php

try
{
    $Username = $_POST['Username'];
    $Password = $_POST['Password'];

    $con = mysqli_connect('localhost','root','Password','Letting');

    $query = "SELECT Member_Id, Member_Firstname, Member_Surname FROM Members WHERE Member_Username = '" . $Username['Member_Username'] .  "' AND Password = '" . $Password['Member_Password']. "'";
    $result = $con->query($query);

    if($result->num_rows)
    {
        $row = $result->fetch_assoc();

        $_SESSION['MemberId']=$row['Member_Id'];
        $_SESSION['Firstname']=$row['Member_Firstname'];
        $_SESSION['Surname']=$row['Member_Surname']; …
Run Code Online (Sandbox Code Playgroud)

php mysql mysqli

1
推荐指数
1
解决办法
48
查看次数

打印数组有适当的缩进

foreach ( $custom_fields as $field_key => $field_values ) {
    foreach ( $field_values as $key => $value )
        echo $field_key . '<br>';
        echo '<pre>' , print_r( $value,true) , '</pre>';
}
Run Code Online (Sandbox Code Playgroud)

虽然我使用的是print_r<pre>标签,在输出中看起来是这样的:

a:4:{i:0;s:6:"Casual";i:1;s:6:"Serene";i:2;s:6:"Unique";i:3;s:9:"Whimsical";}
Run Code Online (Sandbox Code Playgroud)

不应该垂直列出适当的缩进?我究竟做错了什么?

php arrays json pretty-print

0
推荐指数
1
解决办法
195
查看次数

在PHP中定义一个常量

我在我的代码中定义/初始化常量:

if(!define('CHECKLIST'))
{
    define("CHECKLIST",FALSE);
}
Run Code Online (Sandbox Code Playgroud)

但它没有用,我收到了一个警告错误.

警告:define()需要至少2个参数,1在PHP中给出

php

0
推荐指数
1
解决办法
391
查看次数

在 PHP 中将 XML 转换为对象,然后再次将该对象转换为 XML?

假设我有一个如下的 XML -

$xml = '<?xml version="1.0"?>
<step number="9">
  <s_name>test</s_name>
  <b_sel>12345</b_sel>
  <b_ind>7</b_ind>
</step>';
Run Code Online (Sandbox Code Playgroud)

我希望将其转换为对象,但是当我执行以下步骤时,它给了我如下的 stdclass 对象 [我将它分配给 $stepInformation 变量] -

$xml = json_decode(json_encode((array) simplexml_load_string($xml)), 1);

$stepInformation = stdClass Object
(
    [@attributes] => Array
        (
            [number] => 9
        )

    [s_name] => test
    [b_sel] => 12345
    [b_ind] => 7
)
Run Code Online (Sandbox Code Playgroud)

所以当我在 php 函数中解析这个 stdclass 对象时

function convertStepInformationToArray($stepInformation)
{
     $dom = new DOMDocument();
    $stepInfo = "{$stepInformation->s_name}{$stepInformation->b_sel}{$stepInformation->b_ind}";    
$dom->loadXML("<document>" . $stepInfo . "</document>");
    $domx = new DOMXPath($dom);
    $entries = $domx->evaluate("//step");
    return $entries;
}
Run Code Online (Sandbox Code Playgroud)

我得到的输出是

DOMNodeList …
Run Code Online (Sandbox Code Playgroud)

php xml simplexml domdocument

0
推荐指数
1
解决办法
1万
查看次数

标签 统计

php ×10

html ×3

mysql ×3

mysqli ×3

arrays ×2

caching ×1

css ×1

domdocument ×1

json ×1

pretty-print ×1

simplexml ×1

string ×1

tags ×1

xml ×1